Method and apparatus for constructing intermediate images for a depth image from stereo images using velocity vector fields

ABSTRACT

An interpolation operation is performed between a pair of stereo images to produce plural intermediate images. The interpiolation operation involves estimating the velocity vector field of the intermediate images. The estimation for a particular intermediate image includes constraining the search for the correspondences between the two images in the horizontal direction allowing the system to arrive at a more optimal solution. Excessive gap filling by smoothing is not necessary. At the same time the process vertically aligns the entirety of the images.

REFERENCE TO MICROFICHE APPENDIX

A microfiche appendix of source code in the "C" language having 63 total frames and one total microfiche. The microfiche appendix included herewith provides source code suitable for implementing an embodiment of the present invention on a Sun Microsystem Sparc 10 computer running the Unix operating system.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method and an apparatus for constructing a depth image from a pair of stereo images by interpolating intermediate images and then interlacing them into a single image.

2. Description of the Related Art

Producing images that have the perception of depth has traditionally been accomplished by photographic methods. Integral and lenticular photography have a long history of theoretical consideration and demonstration, but have only been met with limited commercial success. Many of the elementary concepts supporting integral and lenticular photography have been known for many years (see Takanori Okoshi, Three-Dimensional Imaging Techniques, Academic Press, New York, 1976; and G. Lippman, "E'preuves re'versibles, Photographics integrales," Comptes Rendus, 146, 446-451, Mar. 2, 1908). The term integral photography refers to the composition of the overall image as an integration of a large number of microscopically small photographic image components. Each photographic image component is viewed through a separate small lens usually formed as part of a mosaic of identical spherically-curved surfaces embossed or otherwise formed onto the front surface of a plastic sheet of appropriate thickness. This sheet is subsequently bonded or held in close contact with the emulsion layer containing the photographic image components. Lenticular photography could be considered a special case of integral photography where the small lenses are formed as sections of cylinders running the full extent of the print area in the vertical direction. A recent commercial attempt at a form of lenticular photography is the Nimslo camera which is now being manufactured by a Hong Kong camera works and sold as a Nishika camera. A sense of depth is clearly visible, however, the images resulting have limited depth realism and appear to jump as the print is rocked or the viewer's vantage relative to the print is changed.

An optical method of making lenticular photographs is described by Okoshi. A photographic camera is affixed to a carriage on a slide rail which allows it to be translated in a horizontal direction normal to the direction of the desired scene. A series of pictures is taken where the camera is translated between subsequent exposures in equal increments from a central vantage point to later vantage points either side of the central vantage point. The distance that the lateral vantage points are displaced from the central vantage point is dependent on the maximum angle which the lenticular material can project photographic image components contained behind any given lenticule before it begins to project photographic image components contained behind an adjacent lenticule. It is not necessary to include a picture from the central vantage point, in which case the number of images will be even. If a picture from the central vantage point is included, the number of images will be odd. The sum of the total number of views contained between and including the lateral vantage points will determine the number of photographic components which eventually will be contained behind each lenticule.

The negatives resulting from each of these views are then placed in an enlarger equipped with a lens of the same focal length the camera lens. Since the camera had been moved laterally between successive exposures as previously described, the positions of the images in the original scene will be seen to translate laterally across the film format. Consequently, the position of the enlarged images from the negatives also move laterally with respect to the center of the enlarger's easel as successive negatives are placed in the film gate. An assemblage consisting of a sheet of photographic material oriented with it's emulsion in contact with the flat back side of a clear plastic sheet of appropriate thickness having lenticules embossed or otherwise formed into its other side, is placed on the enlarger easel with the lenticular side facing the enlarger lens. The position of this sheet on the easel is adjusted until the field of the central image is centered on the center of this assemblage, and an exposure of the information being projected out of the enlarger lens is made through the lenticules onto the photographic emulsion. Subsequently, negatives from the successive exposures are placed in the film gate and the position of this assemblage is readjusted on the easel to reposition each respective view to the center of the assemblage, and additional exposures of the information being projected from the enlarger lens are be made. When all the views contained between the lateral vantages have been similarly exposed on the emulsion through the lenticular plastic sheet, the film sheet can be separated from the lenticular plastic sheet and developed. If the aperture diameter of the enlarger lens is set to equal the amount of lateral shift between alternate views, the space behind each lenticule will be found to be exactly filled with photographic image components. The final step in this process is to reassemble the photographic film and the plastic sheet again with intimate contact between the emulsion layer and the flat side of the lenticular plastics heet and so positioned laterally, so that the long strips of adjacent images resulting from exposures through the cylindrical lenticules are again positioned in a similar manner under the lenticules for viewing.

Ideally, an integral or lenticular photograph displays an infinite number of different angular views from each lenslet of lenticule. This is impossible since each angular view must have a corresponding small finite area of exposed emulsion or other hard copy media. Consequently, as an upper limit, the number of views must not exceed the resolution limit of the hard copy media. In the Nimslo print, the number of views behind each lens is limited to four views, two of which were considered left perspective views and the remaining two as right perspective views. This is well below the resolution limit of conventional photographic emulsions and allows for only two options of stereoscopic viewing perspective as the viewer's head moves laterally.

The optical multiple projection method was also utilized in many experiments by Eastman Kodak researchers and engineers in the 1960's and 1970's and produced a lenticular photo displayed on the front cover of the 1969 Annual Report to Stockholders. This print had a large number of cameras taking alternate views of the scene to provide a smooth transition of perspectives for each lens. It is possible that as many as 21 different angular views were present and the result is much more effective. This method of image recording is called an "indirect" technique because the final print recording is indirectly derived from a series of two-dimensional image recordings.

A more modern method of creating a lenticular print of depth image is to photographically capture two or more spatially separated images of the same scene and digitize the images, or capture digital images electronically. The digitized images are used to drive a printer to print the images electronically onto a print or transparency media to which a lenticular faceplate is attached for viewing. This method of creating a depth image is typified by U.S. Pat. No. 5,113,213 and U.S. application Ser. No. 885,699 (Kodak Dkt. 64,374).

One problem with the above-described methods is that quite often the images are captured at a location distant from the printing site and if more images of the scene are necessary to provide a realistic sense of depth, the process of capturing, etc. must be completely performed again. Since images are digital and are processed for printing by a computer it is possible to solve this problem by using the computer to create the extra needed images using interpolation. However, conventional interpolation is not suitable because of problems related to object occlusion. A process for creating the extra needed images is described in U.S. application Ser. No. 07/722,713. However, this approach does not produce the best intermediate image possible because an optimal solution is not always found during the search for the features of the intermediate image due to the multidimensional searching and the requirement for image smoothing when a multidimensional search is being performed.

A second problem with the above systems is that plural images must be stored between which the interpolated intermediate images are created.

What is needed is a system of stereo image interpolation which will produce multiple intermediate images between a pair of captured images such that the intermediate image quality is better because more optimal solutions to the search are found requiring less images smoothing.

SUMMARY OF THE INVENTION

It is an object of the present invention to produce a depth image that is more appealing to the viewer.

It is another object of the present invention to create several intermediate images from a single pair of stereo images.

It is also an object of the present invention to constrain the image search process in a horizontal direction to improve interpolated image quality and reduce the need for filling in image gaps with image smoothing processes.

It is an additional object of the present invention to align the entirety of the stereo images in the vertical direction in a single operation.

The present invention accomplishes the above objects by performing an interpolation operation between a pair of stereo images to produce plural intermediate images which are then used to produce a depth image. The interpolation operation involves estimating the velocity vector field of the intermediate images. The estimation for a particular intermediate image involves constraining the search for the correspondences between the two images in the horizontal direction allowing the system to arrive at a more optimal solution which as a result does not require excessive gap filling by smoothing and which at the same time vertically aligns the entirety of the images.

These together with other objects and advantages which will be subsequently apparent, reside in the details of construction and operation as more fully hereinafter described and claimed, reference being had to the accompanying drawings forming a part hereof, wherein like numerals refer to like parts throughout.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts the hardware components of the present invention;

FIG. 2 illustrates two dimensional searching during correspondence processing;

FIG. 3 depicts one dimensional searching during correspondence processing;

FIG. 4 is a block diagram of the processes of the present invention; and

FIG. 5 illustrates disparity vector field processing.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention is designed to obtain images intermediate to a pair of stereo images so that a depth image, such as a lenticular or barrier image, can be created. The present invention, as illustrated in FIG. 1, is implemented using conventional image processing equipment. The equipment includes one or more cameras 10 that captures stereo images on film. The film images are digitized by a conventional digitizer 12. An electronic camera can of course substitute for the film camera and digitizer. The digitizer images are supplied to a computer 14 which performs the process discussed herein to create intermediate images. The images are interlaced and provided to a display device 16. The display device 16 can be a CRT with a lenticular or barrier strip faceplate or it can be a print or transparency printer which produces a print to which a lenticular or barrier strip faceplate is attached.

To obtain the most appealing perception of depth it is desirable to produce a depth image with the maximum number of angular views. It is also desirable to reduce the number of optically recorded images to a single pair of stereo images and to reconstruct the images corresponding to the missing angular views (the intermediate images) from this stereo pair. To reconstruct the intermediate images, first the correspondences between the stereo pair are established, then these correspondences are used to estimate the intermediate images through an interpolation process. The correspondence between the stereo pair establishes the apparent movement in the two images caused by differences in the position of the camera lens. By considering the change in position of a point as a vector a means of estimating images as if a camera was positioned intermediate between the two actual cameras can be established. Not all points will have corresponding points, primarily due to occlusions, and allowances must be made to reconstruct images with these occurences. This vector field is commonly referred to as the optical flow (see Robot Vision, B. K. P. Horn, The MIT Press, 1991). One of the well-known characterizations of optical flow is that depth is inversely proportional to the magnitude of the optical flow vector. In this instance the zero parallax plane occurs in object space where the optical flow vectors have magnitude zero, i.e., points unaffected by the change of camera position, such as the background.

In creating a pixel 20 (See FIG. 2) of an intermediate image 22 the first step is to find correspondences between the pair of images 24 and 26. To find the corresponding portions of pair of images a vector or line 28 passing through the pixel 20 being created in the intermediate image is used to designate different areas on the images 24 and 26 are to be compared. Essentially the point of incidence on the images 24 and 26 can be systematically moved about two dimensional areas 30 and 32 searching for the areas that have the highest correlation in spectral and other image characteristics. Once these points are found the correspondences can be used to interpolate the value of the intermediate pixel 20. The correspondences between two images in two dimensions does not have a unique solution and, as a result, a search process as illustrated in FIG. 2 may not produce the best solution. In addition, because the solution is not unique it is necessary to perform smoothing of the image to reduce or eliminate noise artifacts created in the intermediate image 22.

The process of establishing correspondence when stereo images are involved can be enhanced and the solution improved by recognizing that the two images are of the same scene. The only difference being the horizontal displacement of the views or points from which the images were captured. Instead of searching a two dimensional area as in FIG. 2, a one dimensional search along the horizontal axis 38 of the images is performed as illustrated in FIG. 3.

Given this understanding of the concept of the present invention, the problem being solved by the present invention can be stated in more detail.

Given a pair of stereo images (images of a scene taken from different viewpoints) estimates of intermediate images (images taken from some intermediate viewpoints) must be found and the depth image constructed by interlacing the intermediate images. To estimate the intermediate images, the correspondences between the stereo image pair must be established, then these correspondences used to estimate the intermediate images through an interpolation process. The axes of the scene coordinate system are defined as the horizontal axis, the vertical axis, and the depth axis. The selection of the viewpoints is restricted in such a way that the image planes of the pair of stereo images coincide with the plane of the scene spanning the horizontal and the vertical axes. The cameras used in obtaining the stereo image pair are assumed to be positioned parallel to the plane of the scene spanning the horizontal and vertical axes, and the changes in the camera positions are assumed to be strictly in the horizontal direction. It is assumed that the horizontal and the vertical axes of each image of the stereo image pair coincide with the horizontal and the vertical axes of the scene. Under these assumptions the correspondence between the images of the stereo image pair can be characterized by the intermediate disparity vector field with the constant vertical component relating to the alignment of the images and with the variable horizontal component relating to the depths of the corresponding points in the scene.

To solve this problem as discussed hereinafter an overview of the right and the left images of the scene forming a stereo image pair and taken by a camera are digitized into multi-banded digital images with a fixed number of spectral band, B. Each band of the right and the left digital images is defined as a two-dimensional array of numbers representing some measurements, known as pixels, taken from some grid of points Ω" on the sensed image. In the preferred embodiment, this grid is assumed to be a rectangular lattice. Given the right digital image 50 (See FIG. 4) taken at the viewpoint t_(R) and comprising of the spectral bands R₁, . . . , R_(B), and given the left digital image 52 taken at the viewpoint t_(L) and comprising of the spectral bands L₁, . . . , L_(B), the process of constructing the depth image consisting of the bands D₁, . . . , D_(B) is illustrated in FIG. 4 and can be described as follows. First the correspondences between the left and right images are established 54, and the intermediate disparity vector fields (U₁, V₁), . . . , (U_(K),V_(K)) at some intermediate viewpoints t₁, . . . , t_(K) respectively are estimated 56 and 58. Then for each band b=1, . . . , B and for each intermediate viewpoint t_(K),k=1, . . . , K, the estimate of the intermediate image band I_(b),k is obtained 60 by the interpolation process. Finally, for each image band the depth image band D_(b) is constructed by interlacing the intermediate image bands I_(b),l, . . . , I_(b),K to produce the depth image 62.

For each k=1, . . . , K the method of estimating the intermediate disparity vector field (U_(k),V_(k)) at the intermediate viewpoint t_(k) is illustrated in FIG. 5 and can be described as the following multi-level resolution process: 1) Start 70 with the coarsest resolution level and the current estimate of the intermediate disparity vector field, (initially set to some constant); 2) Iteratively 72-82 improve the current estimate; 3) Project 84 to the next finer level of resolution to obtain the initial estimate of the intermediate disparity vector field at the next finer level which is taken as the current estimate of the intermediate disparity vector field; 4) Repeat steps 2) and 3) until the finest resolution level is reached.

The proper estimate of the finest resolution level is taken as the final estimate of the intermediate disparity vector field.

On each level of the multi-level resolution process a system of nonlinear equations relative to the unknown current estimate of the intermediate disparity vector field is formed 76, then iterative improvement of the current estimate of the intermediate disparity vector field is achieved by solving 78 this system of nonlinear equations. The system of nonlinear equations relative to the unknown current estimate of the intermediate disparity vector field is defined in terms of the unknown current estimate of the intermediate disparity vector field, the quantities related to the right and to the left pixels and the generalized spatial partial derivatives of the right and the left images. These quantities are obtained by filtering each band of the right and the left images with filters φ₁, . . . φ_(F) and with the spatial partial derivatives of these filters. The symbol G is used for the set of indices with each index g ε G specifying a particular band and a particular filter. The multi-level resolution process (See U.S. application Ser. No. 631,750 incorporated by reference herein) is built around a multi-level resolution pyramid meaning that on each coarser resolution level the filtered right and the filtered left images, their spatial partial derivatives and the estimates of the intermediate disparity vector fields are defined on subgrids of grids at a finer resolution level.

At a given resolution level the bands of the filtered right images, the spatial partial derivatives of the bands of the filtered right images, the bands of the filtered left images, and the spatial partial derivatives of the bands of the filtered left images are defined on the same grid of points Ω' on the image plane of size N' by M'. At the same resolution level the intermediate disparity vector fields are defined on a grid of points Ω on the image plane of size N by M. (In the following discussion the partial spatial derivatives taken with respect to the vertical direction will have the subscript v, and analogously partial spatial derivatives with respect to the horizontal direction will have the subscript u.) To form the system of nonlinear equations at this resolution level proceed as follows:

For each index g ε G specifying a particular filter and a particular image band, form an optical flow function g_(t) relative to a grid Ω as the difference between the estimated right filtered image band and the estimated left filtered image band. To obtain the estimated right filtered image band, find the grid of image points Ω_(R) which are the taken from the viewpoint t_(R) estimated perspective projections onto the image plane of the visible points in the scene, whose perspective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the right filtered image from the grid of points Ω' where the right filtered image is defined to the grid of points Ω_(R). The estimated left filtered image band is determined analogously. To obtain the grid of image points Ω_(R), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at that grid point. To obtain the grid of image points Ω_(L), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at that grid point.

For each index g ε G specifying a particular filter and a particular image band, form a spatial partial derivative g_(tu) of the optical flow function g_(t) with respect to the component u of the current estimate of the intermediate disparity vector corresponding to the index g as the defined on the grid Ω sum of the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) spatial partial derivative of the estimated right filtered image band and the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) spatial partial derivative of the estimated left filtered image band. To obtain the spatial partial derivative of the estimated right filtered image band, find the grid of image points Ω_(R) which are taken from the viewpoint t_(R) estimated perspective projections onto the image plane of the visible points in the scene, whose perspective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the spatial partial derivatives of the right filtered image from the grid of points Ω' where the spatial partial derivative of the right filtered image is defined to the grid of points Ω_(R). To obtain the spatial partial derivative of the estimated left filtered image band, find the grid of image points Ω_(L) which are taken from the viewpoint t_(L) estimated perspective projections onto the image plane of the visible points in the scene, whose perspective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the spatial partial derivatives of the left filtered image from the grid of points Ω' where the spatial partial derivative of the left filtered image is defined to the grid of points Ω_(L). To obtain the grid of image points Ω_(R), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at that grid point. To obtain the grid of image points Ω_(L), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at that grid point.

For each index g ε G specifying a particular filter and a particular image band, form a spatial partial derivative g_(tv) of the optical flow function g_(t) with respect to the component v of the current estimate of the intermediate disparity vector corresponding to the index g as the defined on the grid Ω sum of the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) spatial partial derivative with respect to the vertical component of the image coordinate system of the estimated right filtered image band corresponding to the index g and the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) spatial partial derivative with respect to the vertical component of the image coordinate system of the estimated left filtered image band corresponding to the index g. To obtain the spatial partial derivative with respect to the vertical component of the image coordinate system of the estimated right filtered image band, find the grid of image points Ω_(R) which are the taken from the viewpoint t_(R) estimated perspective projections onto the image plane of the visible points in the scene, whose pespective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the spatial partial derivatives with respect to the vertical component of the image coordinate system of the right filtered image from the grid of points Ω' where the spatial partial derivative with respect to the vertical component of the image coordinate system of the right filtered image is defined to the grid of points Ω_(R). To obtain the spatial partial derivative with respect to the vertical component of the image coordinate system of the estimated left filtered image band, find the grid of image points Ω_(L) which are taken from the viewpoint t_(L) estimated perspective projections onto the image plane of the visible points in the scene, whose perspective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the spatial partial derivatives with respect to the vertical component of the image coordinate system of the left filtered image from the grid of points Ω' where the spatial partial derivative with respect to the vertical component of the image coordinate system of the left filtered image is defined to the grid of points Ω_(L). To obtain the grid of image points Ω_(R), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at the grid point. To obtain the grid of image points Ω_(L), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at the grid point.

Each non-boundary grid point of the rectangular grid Ω is surrounded by its eight nearest neighbors specifying eight different directions on the image plane. For each boundary grid point of the rectangular grid Ω the nearest neighbors are present only for some of these eight different directions. The symbol s is used to denote a vector on the image plane specifying one of these eight different directions on the image plane. The symbol S is used to denote the set of these eight vectors. For each vector s from the set S specifying a particular direction on the image plane, form a directional smoothness function (s,∇u) for the variable horizontal component u of the current estimate of the intermediate disparity vector field as a finite difference approximation to the directional derivative of the horizontal component u of the current estimate of the intermediate disparity vector field. This directional smoothness function (s,∇u) is defined on the rectangilar subgrid Ω_(s) of the rectangular grid Ω with the property that every grid point of the rectangilar subgrid Ω_(s) has the nearest in the direction s neighbor on the rectangular grid Ω. At each grid point of the rectangular subgrid Ω_(s) the directional smoothness function (s,∇u) is equal to the difference between the value of the horizontal component u of the current estimate of the intermediate disparity vector field at the nearest in the direction s neighbor of this grid point and the value of the horizontal component u of the current estimate of the intermediate disparity vector field at this grid point.

The system of nonlinear equations relative to the unknown current estimate of the intermediate disparity vector field is formed by combining the optical flow function g_(t) and its spatial partial derivatives g_(tu), g_(tv) for each filter and each image band specified by the index g ε G together with the directional smoothness function (s, ∇u) for each image direction s ε S and together with some constant parameters using four basic algebraic operations such as addition, subtraction, multiplication and division.

Given the right digital image taken at the right viewpoint t_(R) and consisting of the bands R₁, . . . , R_(B), and given the left digital image taken at the left viewpoint t_(L) and consisting of the bands L₁, . . . , L_(B), the method of estimating the intermediate digital image taken at the intermediate viewpoint t_(k) and consisting of the bands I₁,k, . . . , I_(B),k based on the estimate of the intermediate disparity vector field (U_(k),V_(k)) obtained at the intermediate viewpoint t_(k) can be described as follows. For each image band b=1, . . . , B the estimate of the intermediate digital image band I_(b),k is defined as the sum of the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) estimated right digital image band and the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) estimated left digital image band. To obtain the estimated right digital image band, find the grid of image points Ω_(R) which are the taken from the viewpoint t_(R) estimated perspective projections onto the image plane of the visible points in the scene, whose perspective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the right digital image band from the grid of points Ω" where the right digital image is defined to the grid of points Ω_(R). To obtain the estimated left digital image band, find the grid of image points Ω_(L) which are the taken from the viewpoints t_(L) estimated perspective projections onto the image plane of the visible points in the scene, whose perspective projections onto the image plane from the viewpoint t_(k) are the grid points Ω; and then interpolate the left digital image band from the grid of points Ω" where the left digital image is defined to the grid of points Ω_(L). To obtain the grid of image points Ω_(R), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(R) -t_(k))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at that grid point. To obtain the grid of image points Ω_(L), each image point of the grid Ω is shifted by the amount equal to the scaled by the factor (t_(k) -t_(L))/(t_(R) -t_(L)) value of the estimated intermediate disparity vector defined at that grid point.

To provide a more thorough understanding of the fundamental operations of the present invention the following more detailed explanation is provided.

In what follows a more general problem is considered and some of the notation is changed. The above mentioned right digital image which is taken at the viewpoint t_(R) and consists of the bands R₁, . . . , R_(B) and the above mentioned left digital image which is taken at the viewpoint t_(L) and consists of the bands L₁, . . . , L_(B) are both represented in what follows by the irradiance image functions ξ(x,y,t), ξεΘ. For a fixed k=1, . . . , K the above mentioned intermediate disparity vector field (U_(k),V_(k)) which is defined at the intermediate viewpoint t_(k) is represented in what follows by the parametric velocity vector field estimate {(u.sup.σ (x,y,t_(k)), u(t_(k)))|(x,y)εΩ,σε 1,∞!}. The pair of stereo viewpoints {t_(R), t_(L) } is represented in what follows by the sequence of viewpoints {t"_(o), . . . , t"_(k") } where K"=1.

We shall deal with images of a three-dimensional scene and their spatial partial derivatives taken at the viewpoints within some interval T. The initial images of a three-dimensional scene are, in general, discontinuous functions and their spatial partial derivatives are not defined at the points of discontinuity. The points of discontinuity are, often, among the most important points in the images and cannot be easily ignored. To overcome these difficulties the initial images are treated as generalized functions and their partial derivatives as generalized partial derivatives. These generalized functions are defined on some subset of the set of infinitely differentiable functions. The functions from the subset are called "testing functions". Parametric families of secondary images are then introduced through evaluations of the generalized functions associated with the initial images on the specific parametric family of functions taken from the set of testing functions. The secondary images are infinitely differentiable, and their partial derivatives can be obtained through evaluations of the generalized functions associated with the initial images on the partial derivatives of this specific parametric family of functions. This process can be described as follows.

One way of constructing an initial image for a given viewpoint t ε R (here R is a one-dimensional Euclidean space) is by projecting the light reflected by the objects in the scene onto a two-dimensional Euclidean space R², called the "image plane", and then identifying the irradiance value ξ(x,y,t) of each point (x,y) in the image plane R². The function ξ(x,y,t) defined as above will be called the "irradiance image function". The value ξ(x,y,t) of the irradiance image function at the point (x,y) ε R² and the viewpoint t ε R is assumed to be roughly proportional to the radiance of the point in the scene being imaged, which projects to such a point (x,y) at the viewpoint t for every (x,y) ε R² and every t ε R. Different irradiance image functions ξ(x,y,t), (x,y,t)ε R³ (here R³ is a three-dimensional Euclidean space) can be obtained by changing the following aspects of the image formation process: the direction of a light source illuminating the scene, the color of such a light source, and the spectral responsivity function that is used to compute the irradiance.

Assume that each irradiance image function ξ(x,y,t) is locally integrable with respect to the Lebesgue measure dx dy dt in R³ and thereby can be used to form a continuous linear functional Γ.sub.ξ (generalized function) defined on the locally convex linear topological space Φ(R³). The space Φ(R³) consists of all infinitely differentiable functions having compact supports in the set R³. This means that for each function φεΦ(R³) there exists a closed bounded subset S.sub.φ εR³ such that the function φ is equal to zero at the points that are outside the subset S.sub.φ. The topology of the space Φ(R³) is defined by a certain family of semi-norms. The functions φ from the set Φ(R³) will be called the "testing functions". The value of the generalized function Γ.sub.ξ associated with the irradiance image function ξ at the testing function φεΦ(R³) is defined by the following relation: ##EQU1## The generalized function Γ.sub.ξ associated with different irradiance image functions ξ(x,y,t) are united into the family {Γ.sub.ξ |ξεΘ}. Here, to simplify the notation, the symbol ξ takes the role of the index (parameter) specifying the generalized function Γ.sub.ξ associated with a particular irradiance image function ξ(x,y,t) in addition to its role as a part of the notation for such an irradiance image function. The symbol Θ denotes the set of indices.

Another way of constructing an initial image at a given viewpoint t ε R is by identifying the set of points M(t).OR right.R² in the image plane, called the "feature points", where significant variations in the projected light patterns represented by the irradiance image functions take place at the viewpoint t, and then assigning feature value η(x.sub.μ,y.sub.μ,t.sub.μ) to each feature point (x.sub.μ,y.sub.μ,t.sub.μ)εM(t). The set of feature points ##EQU2## is assumed to be a closed subset of the space R³. The function η(x.sub.μ,y.sub.μ,t.sub.μ) defined on the set M as above will be called the "feature image function". Different feature image functions η(x.sub.μ,y.sub.μ,t.sub.μ), (x.sub.μ,y.sub.μ,t.sub.μ)εM can be obtained by changing the criteria for selecting the set of feature points M and the criteria for assigning the feature value η(x.sub.μ,y.sub.μ,t.sub.μ). The set M may, for example, be a finite combination of the following four types of the subsets of the space R³ : the three-dimensional regions, the two-dimensional regions, the one-dimensional contours, and the isolated points.

By the family B.tbd.B(M) of "Borel subsets" of the set M shall be meant the members of the smallest σ-finite, σ-additive family of subsets of M which contains every compact set of M. Let μ(B) be a σ-finite, σ-additive, and real-valued measure defined on the family B of Borel subsets of the set M. The feature image function η(x.sub.μ,y.sub.μ,t.sub.μ),(x.sub.μ,y.sub.μ,t.sub.μ)εM is assumed to be μ-measurable and thereby can be used to form a continuous linear functional Γ.sub.η (generalized function) defined on the locally convex linear topological space Φ(R³). The value of the generalized function Γ.sub.η associated with the feature image function η at the testing function φεΦ(R³) is given by the following relation: ##EQU3## The generalized function Γ.sub.η associated with different feature image functions η(x.sub.μ,y.sub.μ,t.sub.μ) are united into the family {Γ.sub.η |ηεH}. Here, to simplify the notation, the symbol η takes the role of the index (parameter) specifying the generalized function Γ.sub.η associated with a particular feature image function η(x.sub.μ,y.sub.μ,t.sub.μ) in addition to its role as a part of the notation for such a feature image function. The symbol H denotes the set of indices.

Given a generalized function F defined on the locally convex linear topological space Φ(R³), and given non-negative integer constants m_(x), m_(y), m_(t) the "generalized partial derivative" ##EQU4## of the generalized function F is the generalized function ##EQU5## defined on the locally convex linear topological space Φ(R³) as follows. The value of the generalized function ##EQU6## at a testing function φεΦ(R³) is the value of the generalized function F itself at the testing function ##EQU7##

A "combined generalized initial image function" will be defined as a linear combination of the generalized partial derivatives of the generalized functions associated with the irradiance image functions and one of the generalized partial derivatives of the generalized functions associated with the feature image functions. Let λ.tbd.{λ.sub.ξ, λ.sub.η |ξεΘ, ηεH} be a set of real-valued constants; let g(λ) be an index attached to the set λ; and let m_(g)(λ) .tbd.{m.sub.λ,x,m.sub.λ,y,m.sub.λ,t,m.sub.η,x,m.sub.η,y,m.sub.η,t |ξεΘ,ηεH} be a set of non-negative integer constants corresponding to the set of constants λ. Then the combined generalized initial image function corresponding to the set of constants λ is the generalized function Γ_(g)(λ) defined on the locally convex linear topological space Φ(R³). The value of the combined generalized initial image function Γ_(g)(λ) corresponding to the set of constants λ at the testing function φεΦ(R³) is given by the relation ##EQU8## and is called the "observation" of the combined generalized initial image function Γ_(g)(λ) corresponding to the set of constants λ on the testing function φ. The combined generalized initial image functions Γ_(g)(λ) corresponding to sets of constants λ with different values are united into the family {Γ_(g)(λ) |λεΛ}. Here the symbol λ denotes the family of all different sets of constants λ, while the symbol g denotes the one-to-one mapping from the family Λ onto the set of indices denoted by the symbol G. In what follows, to simplify the notation, the argument λ appearing in the notation for a combined generalized initial image function is omitted and the symbol Γ_(g), g ε G is used instead of the symbol Γ_(g)(λ), λεΛ to denote it.

Assume that there is a given fixed testing function ψεΦ(R³), which will be called the "measurement function". (An example of the measurement function ψ is given later.) Let g ε G; then for every point (x,y) of some convex bounded subset Ω .OR right. R² (such points will be called "image points"), for every viewpoint t ε T, and for every value of the parameter σε 1,∞), the value of the component g.sup.σ (x,y,t) of the image corresponding to the parameter value σ at the image point (x,y) and the viewpoint t is determined as the observation Γ_(g) (ψ.sup.σ_(x),y,t) of the combined generalized initial image function Γ_(g) on the testing function ##EQU9## Note that, to simplify the notation, the symbol g is used as the part of the notation g.sup.σ for the component of the image corresponding to the parameter value σ in addition to its role as the index for such a component.

The parametric vector valued function g.sup.σ (x,y,t).tbd.{g.sup.σ (x,y,t)|gεG}, (x,y,t)εΩ×T, σε 1,∞) with each component g.sup.σ (x,y,t), gεG defined on the set Ω×T as the observation Γ_(g) (ψ.sup.σ_(x),y,t) of the combined generalized initial image function Γ_(g) on the testing function ψ.sup.σ_(x),y,t εΦ(R³) specified by the relation (2-4) for every parameter value σ from the set 1,∞) (here the symbol Ω×T denotes the Cartesian product of the set Ω on the set T) will be called the "parametric viewpoint-varying image function". The points (x,y,t) from the set Ω×T will be called "viewpoint-varying image points". By the "image" corresponding to the parameter value σε 1,∞) and taken at the viewpoint t ε T is meant the collection, {g.sup.σ (x,y,t)|(x,y)εΩ}, of the values of the parametric viewpoint-varying image function g.sup.σ (x,y,t), (x,y,t)εΩ×T. The collection {g.sup.σ (x,y,t)|(x,y)εΩ,σε 1,∞)} of the images {g.sup.σ (x,y,t)|(x,y)εΩ} corresponding to every parameter value σε 1,∞) and taken at a fixed viewpoint tεT will be called the "parametric image" taken at the viewpoint t.

Each component g.sup.σ (x,y,t), gεG of the parametric viewpoint-varying image function g.sup.σ (x,y,t) is infinitely differentiable everywhere in the domain Ω×T, and its partial derivatives with respect to the variables x, y, t can be obtained as observations of the combined generalized initial image function Γ_(g) on the partial derivatives with respect to the parameters x, y, t of the testing function ψ.sup.σ_(x),y,t εΦ(R³) specified by the relation (2-4). For example, the components g_(x).sup.σ (x,y,t), g_(y).sup.σ (x,y,t), gεG of the first-order partial derivatives g_(x).sup.σ (x,y,t).tbd.{g_(x).sup.σ (x,y,t)|gεG}, g_(y).sup.σ (x,y,t).tbd.{g_(y).sup.σ (x,y,t)|gεG} of the parametric viewpoint-varying image function g.sup.σ (x,y,t) are given as the observations ##EQU10## of the combined generalized initial image function Γ_(g) on the testing functions ##EQU11## for every (x,y,t) εΩ×T, σε 1,∞), where ##EQU12## and ψ_(x) (x,y,t), ψ_(y) (x,y,t) are the partial derivatives of the function ψ(x,y,t) with respect to the variables x,y.

Let t-Δt⁻,t,t+Δt⁺ εR be three consecutive viewpoint (here Δt⁻ and Δt⁺ are positive viewpoint increments), and let (x(t-Δt⁻),y(t-Δt⁻))εR² be a projection of some point in the scene taken at the viewpoint t-Δt⁻, while (x(t+Δt⁺),y(t+Δt⁺))εR² is a projection of the same point taken at the viewpoint t+Δt⁺. The vector (u_(A) (x,y,t,Δt⁻,Δt⁺),v_(A) (x,y,t,Δt⁻,Δt⁺)) defined by the relations

    u.sub.A (x,y,t,Δt.sup.-,Δt.sup.+)=(x(t+Δt.sup.+)-x(t-Δt.sup.-))/(Δt.sup.- +Δt.sup.+).                    (2-7)

    v.sub.A (x,y,t,Δt.sup.-,Δt.sup.+)=(y(t+Δt.sup.+)-y(t-Δt.sup.-))/(Δt.sup.- +Δt.sup.+),                    (2-8)

where

    x=(Δt.sup.- x(t+Δt.sup.+)+Δt.sup.+ x(t-Δt.sup.-))/(Δt.sup.- +Δt.sup.+),    (2-9)

    y=(Δt.sup.- y(t+Δt.sup.+)+Δt.sup.+ y(t-Δt.sup.-))/(Δt.sup.- +Δt.sup.-),    (2-10)

will be called the "average velocity vector" of the scene projection at the point (x,y)εR² and the viewpoint tεR based on the scene projections at the viewpoint t+Δt⁺ and the viewpoint t-Δt⁻. The vector (u_(A) (x,y,t,Δt⁻,Δt⁺), v_(A) (x,y,t,Δt⁻,Δt⁺)) can be defined only at those points (x,y) from the set R² that are projections of the points in the scene visible at the viewpoint t-Δt⁻ as well as the viewpoint t+Δt⁺. The collection of such image points will be denoted by the symbol Ω(t,Δt⁻,Δt⁺).

The "instantaneous velocity vector" (u_(I) (x,y,t),v_(I) (x,y,t)) of the scene projection at the point (x,y)εR² and the viewpoint tεR will now be defined. Let Δt⁻, Δt⁺ be positive viewpoint increments, and let W(x,y,t,Δt⁻,Δt⁺) be the set which is equal to a single-element set containing the average velocity vector (u_(A) (x,y,t,Δt⁻,Δt⁺),v_(A) (x,y,t,Δt⁻,Δt⁺)) if (x,y)εΩ(t,Δt⁻,Δt⁺), and is equal to an empty set O/ otherwise. Then for every positive viewpoint increment Δt<δt (here δt is a positive real constant), the set W(x,y,t,Δt) will be defined from the relation ##EQU13## while the set W(x,y,t) will be defined as ##EQU14## where the symbol W(x,y,t,Δt) means the topological closure of the set W(x,y,t,Δt). It will be assumed that W(x,y,t) are single-element sets for almost every (x,y,t)εR³. This assumption means that the subset of the set R³ containing the points (x,y,t), where the sets W(x,y,t) are not single-element sets, has a Lebesgue measure equal to zero. For every point (x,y,t)εR³ such that the set W(x,y,t) consists of a single element, that element is selected as the value of the instantaneous velocity vector (u_(I) (x,y,t),v_(I) (x,y,t)); otherwise a zero vector is chosen for the value of the instantaneous velocity vector (u_(I) (x,y,t),v_(I) (x,y,t)).

Assume that the functions u_(I) (x,y,t),v_(I) (x,y,t),(x,y,t)εR³ are locally integrable with respect to the Lebesgue measure dx dy dt in R³ and thereby can be used to form continuous linear functionals U_(I), V_(I) (generalized functions) defined on the locally convex linear topological space Φ(R³). The values of the generalized functions U_(I), V_(I) at the testing function φεΦ(R³) are given by the relations ##EQU15## Let (x,y) be an image point from Ω, t a viewpoint from T, and σ a parameter value from 1,∞); then the "velocity vector" (u.sup.σ (x,y,t),v.sup.σ (x,y,t)) of the image corresponding to the parameter value σ at the point (x,y) and the viewpoint t is defined from the relations ##EQU16## where ψ is the measurement function from the set Φ(R³). Note that as has been mentioned earlier the vertical component v.sup.σ (x,y,t) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (x,y,t)) is independent of the image point (x,y) and therefore will be denoted as v.sup.σ (t) while the velocity vector will be denoted as (u.sup.σ (x,y,t),v.sup.σ (t)). The collection of the velocity vectors {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ} corresponding to the viewpoint tεT and to the parameter value of σε 1,∞) will be called the "velocity vector field" of the image {g.sup.σ (x,y,t)|(x,y)εΩ} corresponding to the parameter value σ and taken at the viewpoint t. The collection {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the velocity vector fields {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ} of the images {g.sup.σ (x,y,t)|(x,y)εΩ} corresponding to every parameter value σε 1,∞) and taken at a fixed viewpoint tεT will be called the "parametric velocity vector field" of the parametric image {g.sup.σ (x,y,t)|(x,y)εΩ,σε 1,∞)} taken at the viewpoint t.

Let t₀ '<t₁ '< . . . <t_(k) ' be a finite increasing sequence of viewpoints from some viewpoint interval T, and let t be a viewpoint from the same viewpoint interval T. Then the estimation problem can be formulated as follows. Given a sequence of parametric images {g.sup.σ (x,y,t_(k) ')|(x,y)εΩ,σε 1,∞)}_(k=0).sup.K' taken at the viewpoints t_(k) ', k=0, 1, . . . , K', which will be called the "parametric viewpoint-varying image sequence", and given the viewpoint t, find the parametric vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} which is an estimate of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric image {g.sup.σ (x,y,t)|(x,y)εΩ,σε 1,∞)} taken at the viewpoint t.

Although changes in the scene giving rise to the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} are reflected in the parametric viewpoint-varying image sequence {g.sup.σ (x,y,t_(k) ")|(x,y)εΩ,σε 1,∞)}_(k=0).sup.K' the relation between them is not necessarily unique. The same parametric viewpoint-varying image sequence can be associated with different parametric velocity vector fields and, vice versa, the same parametric velocity vector field can result from different parametric viewpoint-varying image sequences.

The method of the present invention, then, includes determining an estimate of the parametric velocity vector field corresponding to a given parametric viewpoint-varying image sequence. In order for this determination to be possible, specific assumptions have to be made about the scene being imaged and about the imaging process itself. The assumptions we make are described in the following. Based on these assumptions constraints are imposed on the estimate of the parametric velocity vector field. The determination of the estimate is then reduced to solving the system of equations arising from such constraints for a given parametric viewpoint-varying image sequence.

Let {g.sup.σ (x,y,t_(k) ')|(x,y)εΩ,σε 1,∞)}_(k=0).sup.K' be a given parametric viewpoint-varying image sequence taken at the viewpoints t_(k) ', k=0, 1, . . . , K', which form an increasing sequence within the viewpoint interval T, and let t be a given viewpoint within the viewpoint interval T. We consider the problem of finding an estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} as a function of the parametric viewpoint-varying image sequence {g.sup.σ (x,y,t'_(k))|(x,y)εΩ,σε 1,∞)}_(k=0) ^(K').

In what follows, the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} is determined as the parametric vector field satisfying a set of constraints. These constraints are based on the following assumptions:

1. The scene to be imaged is assumed to have near-constant and near-uniform illumination, which means that the changes in the incident illumination of each surface patch in the scene are small across the space, and are mainly due to the orientation of such surface patch relative to the light source.

2. The radiance of each surface point in the scene is assumed to be nearly Lambertian, which means that locally its dependence on the viewing position is small and can be neglected.

3. As has been mentioned in the previous section, the irradiance ξ(x,y,t), ξεΘ of each point (x,y) in the image plane R² at a viewpoint tεR is assumed to be roughly proportional to the radiance of the point in the scene projecting into the point (x,y) in the image plane at the viewpoint t, and the proportionality coefficient, to be independent of the location (x,y) and the viewpoint t.

4. The scene is assumed to be made out of opaque objects. The criteria for selecting feature points (x.sub.μ,y.sub.μ,t.sub.μ)εM and the criteria for assigning feature values η(x.sub.μ,y.sub.μ,t.sub.μ),ηεH to each feature point (x.sub.μ,y.sub.μ,t.sub.μ)εM are assumed to represent the true properties of the objects and to be independent of the objects' spatial attitudes.

5. The velocities of neighboring points of the objects in the scene are assumed to be similar, on one hand, and to change slowly with respect to viewpoint, on the other hand. In other words, it is assumed that the parametric viewpoint-varying velocity vector field of the surface points of each object in the scene varies smoothly across the space and across the viewpoint location.

Let Π_(t) be a subset of the space R² defined by the relation

    Π.sub.t .tbd.{(Δt.sup.-,Δt.sup.+)|(Δt.sup.-,Δt.sup.+)εR.sup.2,Δt.sup.- +Δt.sup.+ >0, (t-Δt.sup.-),(t+Δt.sup.+)ε(t".sub.k }.sub.k-0.sup.K", (3-1)

let P_(t) be a subset of the set Π_(t), and let G_(t) .tbd.G×P_(t) be the Cartesian product of the set G on the set P_(t). The elements from the set G_(t) are denoted by the symbol g_(t), and the set G_(t) is assumed to be a measurable space with some measure dg_(t) defined on the family B(G_(t)) of Borel subsets of the set G_(t). In practice, the set G_(t) is finite, and the measure dg_(t) is a point measure on the finite set G_(t), but a more general approach is used for the sake of uniformity of presentation.

Let g_(t) .tbd.(g,Δt⁻,Δt⁺)εG_(t),σε 1,∞), and let g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) be a function defined by the relation

    g.sub.t.sup.σ (x,y,t,u.sup.σ,v.sup.σ).tbd.(g.sup.σ (x+Δt.sup.- u.sup.σ (x,y,t),y+Δt.sup.+ v.sup.σ (t),t+Δt.sup.+)-g.sup.σ (x-Δt.sup.- u.sup.σ (x,y,t),y-Δt.sup.- v.sup.σ (t), t-Δt.sup.-))/(Δt.sup.- +Δt.sup.+),      (3-2)

for every (x,y)εΩ, where: (u.sup.σ,v.sup.σ).tbd.(u.sup.σ (x,y,t),v.sup.σ (t)) is the velocity vector of the image corresponding to the parameter value σ at the image point (x,y) and the viewpoint t. Here, to simplify the notation, the symbol g_(t) is used as the part of the notation g_(t).sup.σ for the above defined function (3-2) in addition to its role as the index for such a function

Let (x,y)εΩ be an image point that is taken at the viewpoint t projection of some point in the scene that does not belong to the occluding boundaries. The occluding boundary of an object is defined as the points in the scene belonging to the portion of the object that projects to its silhouette. The assumptions 1-4 made at the beginning of this section imply that the absolute value of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) is small. Therefore it is natural to use the function

    (g.sub.t.sup.σ (x,y,t,u.sup.σ,v.sup.σ)).sup.2 (3-3)

as a part of the functional whose minimum specifies the estimate (u.sup.σ,v.sup.σ).tbd.(u.sup.σ (x,y,t),vhu σ(t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) of the image corresponding to the parameter value σ. It is customary for the function (3-3) to be called the "optical flow constraint" corresponding to the parameter value σ and the index g_(t) 2, 12-14, 18-21!.

Note that if the viewpoint increments Δt⁻, Δt⁺ approach zero, then for an integer n greater than or equal to 2 the n th-order partial derivative of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ .tbd.u.sup.σ (x,y,t),v.sup.σ .tbd.v.sup.σ (t) of the estimate of the velocity vector approaches zero at a rate proportional to (Δt⁻)^(n-1) +(Δt⁺)^(n-1). This, in particular, implies that when the viewpoint increments Δt⁻,Δt⁺ approach zero the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) approaches the function which is linear with respect to the components u.sup.σ,v.sup.σ of the estimate of the velocity vector.

It can be easily verified that the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector on which the function (3-3) achieves its minimum satisfies the system of equations ##EQU17## where the functions g_(tu).sup.σ (x,y,t,u.sup.σ, v.sup.σ) and g_(tv).sup.σ (x,y,t,u.sup.σ, v.sup.σ) are the first-order partial derivative derivatives of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ and v.sup.σ of the estimate of the velocity vector.

Let the vector (Δu.sup.σ (x,y,t),Δv.sup.σ (t)) be defined as in the relations

    u.sup.σ (x,y,t)=u.sup.σ (x,y,t)+Δu.sup.σ (x,y,t), (3-5)

    v.sup.σ (t)=v.sup.σ (t)+Δv.sup.σ (t). (3-6)

By expanding the left hand sides of the relation (3-4) into their Taylor series about the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) and by setting the second-order and higher partial derivatives of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ .tbd.u.sup.σ (x,y,t) and v.sup.σ .tbd.v.sup.σ (t) of the velocity vector to zero, we obtain the system of linear equations, relative to the vector (Δu.sup.σ (x,y,t),Δv.sup.σ (t)), ##EQU18## where the functions g_(tu).sup.σ (x,y,t,u.sup.σ,v.sup.σ) and g_(tv).sup.σ (x,y,t,u.sup.σ,v.sup.σ) are the first-order partial derivatives of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ and v.sup.σ of the velocity vector.

Let us first assume that the norm of the gradient

    (g.sub.tu.sup.σ (x,y,t,u.sup.σ,v.sup.σ),g.sub.tv.sup.σ (x,y,t,u.sup.σ,v.sup.σ))                      (3-8)

of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ), with respect to the components u.sup.σ and v.sup.σ of the velocity vector, is relatively large; then the system of equations (3-7) is equivalent to the relation

    g.sub.tu.sup.σ (x,y,t,u.sup.σ,v.sup.σ)Δu.sup.σ (x,y,t)+g.sub.tv.sup.σ (x,y,t,u.sup.σ,v.sup.σ)Δv.sup.σ (t)+g.sub.t.sup.σ (x,y,t,u.sup.σ,v.sup.σ)=0. (3-9)

The last relation implies that the requirement for the function (3-3) to achieve a minimum on the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) specifies the component of the estimate in the direction of the gradient (3-8) and leaves the component orthogonal to the gradient (3-8) undetermined.

If the norm of the gradient (3-8) is relatively small; then the system of equations (3-7) becomes too weak, and the requirement for the function (3-3) to achieve a minimum on the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) imposes no constraint on the estimate.

The above discussion suggests that we need to impose additional constraints on the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} in order for the computation to be well defined.

Let S.tbd.{(s_(x),s_(y))|(s_(x),s_(y))εR²,s.sub.x² +s_(y) ² =1} be a unit circle in the two-dimensional Euclidean space R², with each vector s.tbd.(s_(x),s_(y))εS specifying the direction in the image plane. The set S is assumed to be a measurable space with some uniform measure ds defined on the family B(S) of Borel subsets of the set S.

Let s.tbd.(s_(x),s_(y))εS, and let (s,∇u.sup.σ (x,y,t)) be the function defined by the relation ##EQU19## for every (x,y)εΩ. Here the symbol ∇ stands for the gradient of a function with respect to the variables x,y.

Let s.tbd.(s_(x),s_(y))εS, and let (x,y)εΩ be an image point that is taken at a viewpoint t projection of some point in the scene that does not cross the occluding boundary in the direction s, meaning that for all sufficiently small positive constants ω, the following two points in the scene both belong to the same object and are sufficiently close to each other: the first is the one projecting to the image point (x+ωs_(x),y+ωs_(y)) at the viewpoint t, whereas the second is the one projecting to the image point (x,y) at the viewpoint t. The assumption 5 made at the beginning of this section implies that the absolute values of the function (s,∇u.sup.σ (x,y,t)) is small. Therefore it is natural to use the function

    (s,∇u.sup.σ (x,y,t)).sup.2,                 (3-11)

as a part of the functional whose minimum specifies the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) of the image corresponding to the parameter value σ. It is customary for the function (3-11) to be called the "smoothness constraint" in the direction s 2,12-14,18-21!.

Finally, to make the process of computing the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} well defined, we require that for every image point (x,y)εΩ and for every parameter value σε 1,∞) where the optical flow constraints and the directional smoothness constraints impose no restrictions the difference between the unknown estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) and its initial estimate (u₀.sup.σ (x,y,t),v₀.sup.σ (t)) be small. This can be accomplished by including the functions

    (u.sup.σ (x,y,t)-u.sub.0.sup.σ (x,y,t)).sup.2, (3-12)

    (v.sup.σ (t)-v.sub.0.sup.σ (t)).sup.2          (3-13)

in the functional whose minimum specifies the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) of the image corresponding to the parameter value σ in addition to the functions (3-3) and (3-11) specifying the optical flow and the directional smoothness constraints, provided that the weights associated with the functions (3-12) and (3-13) are small relative to the weights associated with the functions (3-3) and (3-11). The initial estimate (u₀.sup.σ (x,y,t),v₀.sup.σ (t)) appearing in the relations (3-12), (3-13) is defined later in this section. The constraints imposed on the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) at the image point (x,y)εΩ and the viewpoint t by the above requirements will be called the "regularization constraints".

As has been stated earlier, the optical flow and the directional smoothness constraints are not necessarily valid at the points near the occluding boundaries, even when the assumptions described at the beginning of this section are observed. The method of computing the estimate of the parametric velocity vector field of the present invention resolves the above difficulties by adjusting the weight associated with each constraint in such a way that it becomes small whenever the constraint is not valid. In the following, it is described how the functions (3-3), (3-11), (3-12), and (3-13), specifying the optical flow, directional smoothness, and regularization constraints, are combined into the functional of the estimate of the parametric velocity vector field. The estimate is then computed by solving the system of nonlinear equations arising from a certain optimality criterion related to such functional.

The following describes the system of nonlinear equations used in the method of the present invention in its estimation of velocity vector fields. In the method of the invention, the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} is determined as the parametric vector field on which a weighted average of the optical flow, directional smoothness, and regularization constraints is minimized. The weight functions are chosen in such a way that at every image point (x,y)εΩ which is near the occluding boundary the following requirements are met: each weight function associated with an optical flow constraint becomes small whenever the optical flow constraint is not satisfied, and each weight function associated with a smoothness constraint corresponding to a direction in which an occluding boundary is crossed becomes small whenever the directional smoothness constraint is not satisfied. The criteria for the presence of the occluding boundary near a given image point, and the criteria for the occluding boundary being crossed near a given image point in a given direction, can be defined most effectively in terms of the values of the unknown estimate of the parametric velocity vector field. Therefore, the values of the unknown estimate of the parametric velocity vector field have to be used implicitly in each of the weight functions. On the other hand, each weight function has to be treated as if it were independent of the values of the unknown estimate of the parametric velocity vector field, because it only specifies a relative significance of the corresponding constraint as a part of the weighted average and not the constraint itself. To overcome these difficulties, two copies of the unknown estimate of the parametric velocity vector field are introduced: the invariable one, and the variable one. In the weight functions the values of the invariable copy of the unknown estimate of the parametric velocity vector field are used, whereas in the constraint functions the values of the variable copy of the unknown estimate of the parametric velocity vector field are used. Then a more general variational principle as opposed to an energy minimization principle is applied to the weighted average of the optical flow, directional smoothness, and regularization constraints to derive the system of nonlinear equations of the unknown estimate of the parametric velocity vector field. This variational principle can be described as follows.

Let (u,v).tbd.{(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} be an invariable copy of the estimate of the parametric velocity vector field, let (u, v).tbd.{(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} be a variable copy of the estimate of the parametric velocity vector field, and let the parametric vector field (Δu,Δv).tbd.{(Δu.sup.σ (x,y,t),Δv.sup.σ (t))|(x,y)εΩ,σε 1,∞)} be defined by the relation

    (Δu.sup.σ (x,y,t),Δv.sup.σ (t))=(u.sup.σ (x,y,t),v.sup.σ (t))-(u.sup.σ (x,y,t),v.sup.σ (t)), (x,y)εΩ,σε 1,∞).        (4-1)

Assume that the derivative of the parametric vector field (Δu,Δv) in the direction normal to the boundary ∂Ω of the image Ω is equal to zero for every parameter value σε 1,∞) and for every image point (x,y) belonging to the image boundary ∂Ω. This will impose restrictions on the types of the variations that can be applied to the variable copy of the unknown estimate of the parametric velocity vector field.

Let f(u,v,u,v) be a functional of the parametric vector fields (u,v),(u,v) defined as a weighted average of functions (3-3), (3-11), (3-12), and (3-13), specifying the optical flow, directional smoothness, and regularization constraints, respectively, by the following relation: ##EQU20## Here:

(i) α_(g).sbsb.t.sup.σ (x,y,t,u.sup.σ,v.sup.σ,|∇u.sup.σ |),(x,y)εΩ,σε 1,∞),g_(t) εG_(t) is a weight associated with an optical flow constraint corresponding to the parameter value σ and the index g_(t), which is a function of the independent variables x,y,t and of the functions u.sup.σ .tbd.u.sup.σ (x,y,t),v.sup.σ .tbd.v.sup.σ (t),|∇u.sup.σ |.tbd.|∇u.sup.σ (x,y,t)| of these variables;

(ii) β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)), (x,y)εΩ,σε 1,∞),sεS is a weight associated with a smoothness constraint in the direction s, which is a function of the independent variables x,y,t and of the functions u.sup.σ .tbd.u.sup.σ (x,y,t),v.sup.σ .tbd.v.sup.σ (t),(s,∇u.sup.σ).tbd.(s,∇u.sup.σ (x,y,t)) of these variables;

(iii) γ_(y),0, are positive constant specifying weights for the regularization constraints;

(iv) the function |∇u.sup.σ (x,y,t)|,(x,y)εΩ,σε 1,∞) is the norm of the vector valued function ∇u.sup.σ (x,y,t), which is the gradient with respect to the variables x, y of the function u.sup.σ (x,y,t), given by the relation ##EQU21##

(v) the functions (s,∇u.sup.σ (x,y,t)),(s,∇u.sup.σ (x,y,t)), (x,y)εΩ,σε 1,∞),sεS are defined as in the relation (3-10);

(vi) the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ),(x,y)εΩ,σε 1,∞),g_(t) εG_(t) is defined as in the relation (3-2); and

(vii) the components u₀.sup.σ (x,y,t),v₀.sup.σ (t) of the initial estimate of the velocity vector corresponding to the parameter value σε 1,∞) at the image point (x,y)εΩ are defined later.

The estimate of the parametric velocity vector field is then defined as the parametric vector field (u,v), on which the functional f(u,v,u,v), considered as the function of the parametric vector field (u,v) and depending on the parametric vector field (u, v) as on the parameters, achieves a local minimum when the value of the parametric vector field (u,v) is identically equal to the value of the parametric vector field (u, v). Taking into account the relation (4-1) the functional f(u,v,u,v) can be expressed in the form f(u,v,u+Δu,v+Δv). The parametric vector field (Δu,Δv) specifies a perturbation to the parametric vector field (u,v), and the functional f(u,v,u+Δu,v+Δv) assigns the cost to each choice of the parametric vector field (u,v) and its perturbation (Δu,Δv). Then the estimate of the parametric velocity vector field is the parametric vector field (u,v), for which a locally minimal cost is achieved when the perturbation (Δu,Δv) is identically equal to zero. Using the calculus of variations with respect to the parametric vector field (Δu,Δv) applied to the functional f(u,v,u+Δu,v+Δv), the above defined estimate (u,v) of the parametric velocity vector field is a solution of the system of equations ##EQU22## where the functions g_(tu).sup.σ (x,y,t,u.sup.σ,v.sup.σ) and g_(tv).sup.σ (x,y,t,u.sup.σ,v.sup.σ) are the first-order partial derivatives of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ .tbd.u.sup.σ (x,y,t) and v.sup.σ .tbd.v.sup.σ (t) of the estimate of the velocity vector.

To select the weight functions associated with the optical flow, directional smoothness, and regularization constraints, consider the functional f(u,v,u,v) defined by the relation (4-2) under the conditions that the parametric vector field (u,v) be identically equal to the parametric vector field (u,v), and that both be equal to the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field obtained as the solution of the system of nonlinear equations (4-5). In this case the functional f(u,v,u,v) takes the form ##EQU23## Let {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} be an estimate of the parametric velocity vector field, which is obtained as the solution of the system of nonlinear equations (4-4). Select each of the weight functions α_(gt).sup.σ (x,y,t,u.sup.σ,v.sup.σ, |∇u.sup.σ |),g_(t) εG_(t) in such a way that the contribution of the optical flow constraint g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) to the functional (4-5) becomes small for every image point (x,y)εΩ located near the occluding boundary where the optical flow constraint g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) is not satisfied. Similarly, each of the weight functions β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ, (s,∇u.sup.σ)), sεS will be chosen so that the contributions of the directional smoothness constraint (s,∇u.sup.σ (x,y,t)) to the functional (4-5) become small for every image point (x,y)εΩ located near the occluding boundary where the occluding boundary is crossed in the direction s and the directional smoothness constraint (s,∇u.sup.σ (x,y,t)) is not satisfied. Let the image point (x,y)εΩ be near the occluding boundary; then the following two events are likely to happen:

1. For some small positive viewpoint increments Δt⁻ and Δt⁺ the point in the scene projecting into the image point (x,y) at the viewpoint t either is visible at the viewpoint (t-Δt⁻) and is invisible at the viewpoint (t+Δt⁺), or it is visible at the viewpoint (t+Δt⁺) and is invisible at the viewpoint (t-Δt⁻). Let (x₁,y₁) and (x₂,y₂) be projections of such a point in the scene into the image plane taken at the viewpoints (t-Δt⁻) and (t+Δt⁺), respectively. If the radiance of the point in the scene projecting into the image point (x₁,y₁) at the viewpoint (t-Δt⁻) is significantly different from the radiance of the point in the scene projecting into the image point (x₂,y₂) at the viewpoint (t+Δt⁺), and if the radiance undergoes some changes in the neighborhoods of the above points in the scene, then the following cases are likely to be encountered:

1.1. The point in the scene projecting into the image point (x-Δt⁻ u.sup.σ (x,y,t),y-Δt⁻ v.sup.σ (t)) at the viewpoint (t-Δt⁻), and the point in the scene projecting into the image point (x+Δt⁺ u.sup.σ (x,y,t),y+Δt⁺ v.sup.σ (t)) at the viewpoint (t+Δt⁺), both belong to the occluded object, on one hand, and have different radiances, on the other hand. The later may happen if the above points occupy distinct locations on the object of the scene which, in turn, may be caused by the presence of the occluding boundary. Under these conditions the absolute values of some of the functions g.sup.σ_(t) (x,y,t,u.sup.σ,v.sup.σ),g_(t) εG_(t) become large.

1.2. The point in the scene projecting into the image point (x-Δt⁻ u.sup.σ (x,y,t),y-Δt⁻ v.sup.σ (t)) at the viewpoint (t-Δt⁻) and the point in the scene projecting into the image point (x+Δt⁺ u.sup.σ (x,y,t),y+Δt⁺ v.sup.σ (t)) at the viewpoint (t+Δt⁺) both belong either to the occluding object or to the occluded one. In addition to this, for some not-too-large vector (Δu.sup.σ (x,y,t),Δv.sup.σ (t)), one of the following two points in the scene belongs to the occluding object, while the other belongs to the occluded one: the first point is the one projecting into the image point (x-Δt⁻ (u.sup.σ (x,y,t)+Δu.sup.σ (x,y,t)),y-Δt⁻ (v.sup.σ (t)+Δv.sup.σ (t))) at the viewpoint (t-Δt⁻), and the second point is the one projecting into the image point (x+Δt⁺ (u.sup.σ (x,y,t)+Δu.sup.σ (x,y,t)),y+Δt⁺ (v.sup.σ (t)+Δv.sup.σ (t))) at the viewpoint (t+Δt⁺). Likewise, for the same vector (Δu.sup.σ (x,y,t),Δv.sup.σ (t)), one of the following two points in the scene belongs to the occluding object, while the other belongs to the occluded one: the first point is the one projecting into the image point (x-Δt⁻ (u.sup.σ (x,y,t)-Δu.sup.σ (x,y,t)),y-Δt⁻ (v.sup.σ (t)-Δv.sup.σ (t))) at the viewpoint (t-Δt⁻), and the second point is the one projecting into the image point (x+Δt⁺ (u.sup.σ (x,y,t)-Δu.sup.σ (x,y,t)),y+Δt⁺ (v.sup.σ (t)-Δv.sup.σ (t))) at the viewpoint (t+Δt⁺) (see FIG. 1). In such a case the values of the functions (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))²,g^(t) εG_(t) become relatively small, while the values of some of the functions (g_(t).sup.σ (x,y,t,u.sup.σ +Δu.sup.σ, v.sup.σ +Δv.sup.σ))²,g_(t) εG_(t), as well as the values of some of the functions (g_(t).sup.σ (x,y,t,u.sup.σ -Δu.sup.σ,v.sup.σ -Δv.sup.σ))²,g_(t) εG_(t), become relatively large. This implies that the values of some of the functions

    (g.sub.t.sup.σ (x,y,t,u.sup.σ +Δu.sup.σ,v.sup.σ +Δv.sup.σ)).sup.2 +(g.sub.t.sup.σ (x,y,t,u.sup.σ -Δu.sup.σ,v.sup.σ -Δv.sup.σ)).sup.2 -2(g.sub.t.sup.σ (x,y,t,u.sup.σ,v.sup.σ)).sup.2, (4-6)

g_(t) εG_(t) become large. If the second-order and higher partial derivatives of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ .tbd.u.sup.σ (x,y,t) and v.sup.σ .tbd.v.sup.σ (t) of the estimate of the velocity vector are ignored, each of the functions (4-7) can be expressed in the form

    2(Δu.sup.σ (x,y,t)g.sub.tu.sup.σ (x,y,t,u.sup.σ,v.sup.σ)+Δv.sup.σ (t) g.sub.tv.sup.σ (x,y,t,u.sup.σ, v.sup.σ)).sup.2 (4-7)

where the functions g_(tu).sup.σ (x,y,t,u.sup.σ,v.sup.σ) and g_(tv).sup.σ (x,y,t,u.sup.σ,v.sup.σ) are the first-order partial derivatives of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with respect to the components u.sup.σ and v.sup.σ of the estimate of the velocity vector. For the vector s.tbd.(s_(x),s_(y)), sεS that is collinear to the vector (Δu.sup.σ (x,y,t),Δv.sup.σ (t)), the above observations imply that the absolute values of some of the functions (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ)),g_(t) εG_(t), defined by the relation

    (s,∇'g.sup.σ.sub.t (x,y,t,u.sup.σ,v.sup.σ))=s.sub.x g.sup.σ.sub.tu (x,y,t,y.sup.σ, v.sup.σ)+s.sub.y g.sup.σ.sub.tv (x,y,t,u.sup.σ,v,.sup.σ)                      (4-8)

become large.

2. The estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field changes rapidly in the vicinity of the image point (x,y) (see FIG. 2), which implies the following:

2.1. The value of the functions |∇u.sup.σ (x,y,t)| become large.

2.2. The absolute values of the functions (s,∇u.sup.σ (x,y,t)),sεS become large, provided that the image point (x,y) crosses the occluding boundary in the direction s.

If the conditions on the scene being imaged and on the imaging process itself described at the beginning of the previous section are satisfied, then in the event of the absolute value of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) being large for some g_(t) εG_(t), or of the values of the functions |∇u.sup.σ (x,y,t)| being large in addition to the absolute value of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ)being large for some g_(t) εG_(t), the image point (x,y) is likely to be near the occluding boundary, while in the event of the absolute values of the functions (s,∇u.sup.σ (x,y,t)), sεS being large, or of the absolute values of some of the functions (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ, v.sup.σ)), g_(t) εG_(t) being large in addition to the absolute values of the functions (s,∇u.sup.σ (x,y,t), sεS being large, the image point (x,y) is likely to cross the occluding boundary in the direction s. Note that in the case of the functions |∇u.sup.σ (x,y,t)| being large, the image point (x,y) does not necessarily lie near the occluding boundary. It may, for example, lie on the object of the scene whose projection onto the image plane undergoes a rotation or a local deformation. Also note that in the case of some of the functions (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ, v.sup.σ)), g_(t) εG_(t) being large, the image point (x,y) doe snot necessarily cross the occluding boundary in the direction s. It may, for example, cross the radiance boundary arising from a texture or a sudden change in he illumination.

These observations suggest the following: each of the weight functions α.sup.σ_(g).sbsb.t (x,y,t,u.sup.σ,v.sup.σ,|∇u.sup.σ |),g_(t) εG_(t) should be a steadily decreasing function relative to the absolute value of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) and to the values of the function |∇u.sup.σ (x,y,t)| multiplied by the absolute value of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ); and each of the weight functions β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)), sεS should be a steadily decreasing function relative to the absolute values of the function (s,∇u.sup.σ (x,y,t)) and to the absolute values of some of the functions (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ, v.sup.σ)), g_(t) εG_(t) multiplied by the absolute values of the function (s,∇u.sup.σ (x,y,t)).

It is natural to require each of the weight functions corresponding to either an optical flow constraint or a directional smoothness constraint to be selected in such a way that the product of the weight function and the corresponding constraint function appearing as the summand in the functional (4-6) becomes larger whenever the constraint function becomes larger. This makes the solution of the system of nonlinear equations (4-4) determining the estimate of the parametric velocity vector field more robust with respect to the choice of the initial estimate of the parametric velocity vector field and with respect to the noise. To be more specific, these requirements consist of the following.

1. for every g_(t) εG_(t) the function defined by the relation:

    α.sup.σ.sub.g.sbsb.t (x,y,t,u.sup.σ,v,.sup.σ,|∇u.sup.σ |), (g.sup.σ.sub.t (x,y,t,u.sup.σ,v.sup.σ)).sup.2,               (4-9)

and appearing as the summand in the functional (4-5) is required to be steadily increasing relative to the function (g.sup.σ_(t) (x,y,t,u.sup.σ,v.sup.σ))². In other words, the function (4-9) is required to increase whenever the function (g.sup.σ_(t) (x,y,t,u.sup.σ,v.sup.σ))² is increased.

2. For every sεS the function defined by the relation:

    β.sup.σ.sub.s (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)) (s,∇u.sup.σ (x,y,t)).sup.2                 (4-10)

and appearing as the summand in the functional (4-5) is required to be steadily increasing relative to the function (s,∇u.sup.σ (x,y,t))². In other words, the function (4-10) is required to increase whenever the function (s,∇u.sup.σ (x,y,t))² is increased.

The weight functions

    α.sup.σ.sub.gt (x,y,t,u.sup.σ,v.sup.σ,|∇u.sup.σ |)=(r.sup.2 +(p.sup.2 +q.sup.2 |∇u.sup.σ (x,y,t)f) (g.sup.σ.sub.t (x,y,t,u.sup.σ,v.sup.σ)).sup.2).sup.-1,       (4-11)

for every g_(t) εG_(t), where r², p², q² are non-negative real constants, and

    β.sup.σ.sub.s (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ))=(a.sup.2 +(c.sup.2 +b.sup.2 (x,∇'g.sup.σ.sub.t (x,y,t,u.sup.σ,v.sup.σ).sup.2) (s,∇u.sup.σ (x,y,t,)).sup.2).sup.-1,                                  (4-12)

for every sεS, where the expression b² (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))² is defined as in the relation ##EQU24## and a²,c²,b² _(g).sbsb.t,g_(t) εG_(t) are non-negative real constants, comply with the above requirements and with the requirements stated earlier in this section.

The approach of obtaining the estimate of the parametric velocity vector field {(u.sup.σ (x,y,t,v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} by solving the system of nonlinear equations (4-4) for each parameter value σ independently may encounter difficulty relating to the fact that the system of equations (4-4) may, in general, have many solutions. To overcome this difficulty, the values of the estimates of the velocity vector field corresponding to the different values of the parameter σ are tied together by imposing the following restriction: the estimate of the parametric velocity vector field {(u.sup.σ (x,y,t,v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} is required to be a continuously differentiable function with respect to the parameter σ for every image point (x,y)εΩ and for every parameter value σε 1,∞). The additional restrictions on the estimate of the parametric velocity vector field {(u.sup.σ (x,y,t,v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} are imposed in the form of the boundary conditions as follows:

1. The estimate of the parametric velocity vector field {(u.sup.σ (x,y,t,v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} is required to converge to the vector field that is identically equal to a given vector constant (u.sup.∞,v.sup.∞) when the parameter σ converges to ∞, and such convergence is required to be uniform over the set of the image points Ω.

2. The derivative of the estimate of the parametric velocity vector field {(u.sup.σ (x,y,t,v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} in the direction normal to the boundary ∂Ω of the image Ω is required to be equal to zero for every image point (x,y) belonging to the image boundary ∂Ω and for every parameter value σε 1,∞).

Let σε 1,∞) be a given parameter value, and let Δσ be an infinitesimal positive real value. Taking into consideration the above restrictions, the initial estimate of the velocity vector field {(u₀.sup.σ (x,y,t),v₀.sup.σ (t))|(x,y)εΩ) corresponding to the parameter value σ can be defined as follows: (u₀.sup.σ (x,y,t),v₀.sup.σ (t))≡(u.sup.σ+Δσ (x,y,t),v.sup.σ+Δσ (t),(x,y)εΩ(4-14)

Then the regularization constraints (3-12) and (3-13) can, respectively, be approximated by the relations ##EQU25## for every image point (x,y)εΩ, γ_(u),γ_(v) are positive real constants given by the relations

    γ.sub.u =γ.sub.u,0 Δσ.             (4-17)

    γ.sub.v =γ.sub.v,0 Δσ.             (4-18)

By substituting the regularization constraints γ_(u),0 (u.sup.σ (x,y,t)-u₀.sup.σ (x,y,t)) and γ_(v),0 (v.sup.σ (t)-v₀.sup.σ (t)) appearing in the system of nonlinear equations (4-4) with the constraints ##EQU26## respectively, and by defining the weight functions α.sup.σ_(g).sbsb.t (x,y,t,u.sup.σ, v.sup.σ,|∇u.sup.σ |),g_(t) εG_(t) and β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)),sεS according to the relations (4-11) and (4-12), respectively, the system (4-4) becomes the following system of equations relative to the unknown estimate of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)}: ##EQU27##

Under conditions that the regularization constraints 0.5γ_(u),0 (u.sup.σ (x,y,t)-u₀.sup.σ (x,y,t))² and 0.5γ_(v),0 (v.sup.σ (t)-v₀.sup.σ (t))² appearing in the functional f(u,v,u,v) defined by the relation (4-2) be replaced with the constraints ##EQU28## respectively, and provided that the weight functions α.sup.σ_(g).sbsb.t (x,y,t,u.sup.σ, v.sup.σ,|∇u.sup.σ |),g_(t) εG_(t) are defined according to the relation (4-11), whereas the weight functions β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)),sεS are defined according to the relation (4-12), the functional f(u,v,u,v) of the parametric vector field (u,v)≡{(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} and the parametric vector field (u,v)≡{(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} defined by the relation (4-2) can be replaced with the functional h(u,v,u,v) of the same parametric vector fields (u,v)(u,v) defined as in the relation ##EQU29## where the symbol ln stands for the natural logarithm function.

The above substitutions imply that the parametric vector field (u,v) satisfies the system of nonlinear equations (4-19) if and only if every variation of the functional h(u,v,u,v) with respect to the parametric vector field (u,v) is equal to zero whenever the parametric vector field (u,v) is identically equal to the parametric vector field (u,v).

Note that when the constant q² approaches zero and when the increments between successive viewpoints of the viewpoint sequence ((t"_(k))_(k=0) ^(k') uniformly approach zero the functional h(u,v,u,v) approaches the functional, which is independent of the parametric vector field (u,v) and the problem of finding the estimate of the parametric velocity vector field becomes the energy minimization problem.

Let (u,v)≡{(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} be the estimate of the parametric velocity vector field obtained as the solution of the system of nonlinear equations (4-19). We now examine the behavior of the system of nonlinear equations (4-19) near such a solution. First, the changes in the behavior of the optical flow and the directional smoothness constraints when the image point (x,y) goes from the position beyond the occluding boundary to the position near the occluding boundary are considered. Then, the dependence of the optical flow and the directional smoothness constraints on the parameters r², p², q² specifying the weight functions α_(gt).sup.σ (x,y,t,u.sup.σ,v.sup.σ,|∇u.sup.σ |), g_(t) εG_(t) as in the relation (4-11) and on the parameters a²,c²,b² _(g).sbsb.t,g_(t) εG_(t) specifying the weight functions β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)),sεS as in the relation (4-12) are investigated.

(Δu,Δv)≡{(Δu.sup.σ (x,y,t),Δv.sup.σ (t))|(x,y)εΩ,σε 1,∞)} be a parametric vector field defined by the relation (4-1), then in the neighborhood of the parametric vector field (u,v) the functional h(u,v,u+u,v+v) can be expanded into the quadratic form of the parametric vector field (Δu,Δv) as follows: ##EQU30##

The optical flow constraint g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) corresponding to the index g_(t) εG_(t)) is represented in the system of nonlinear equations (4-19) by the expression ##EQU31## With respect to this expression the following cases can be considered:

1. The image point (x,y) is beyond the occluding boundary. Then the value of the function (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))² may become small. In this case the value of the function (4-22) would approach the value of the function ##EQU32## This, in turn, would make each of the two summands of the system of nonlinear equations (4-19) associated with the optical flow constraint g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) corresponding to the index g_(t) behave as a linear function relative to the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) with the proportionality coefficient equal to the function g_(tu).sup.σ (x,y,t,u.sup.σ,v.sup.σ)/r² in the case of the first summand and to the function g_(tv).sup.σ (x,y,t,u.sup.σ,v.sup.σ)\r² in the case of the second summand.

2. The image point (x,y) approaches the occluding boundary. Then the value of the function (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))² may increase. In the case when the value of the function (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))² is less than the value of the function r² /p² +q² |∇u.sup.σ (x,y,t)|²), the fact that the summand of the quadratic form (4-12) associated with the optical flow constraint g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) is positive implies that the function (4-22) would increase. In the case when the value of the function (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))² is greater than the value of the function r² /(p² +q² |∇u.sup.σ (x,y,t)|²), the fact that the summand of the quadratic form (4-21) associated with the optical flow constraint g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ) is negative implies that the function (4-22) would decrease. Therefore, the function (4-22) achieves its maximal value ##EQU33## when the value of the function (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))² is equal to the value of the function r² /(p² +q² |∇u.sup.σ (x,y,t)|²).

It may also happen that the values of the function |∇u.sup.σ (x,y,t)| becomes large. Under these conditions the following values are reduced: the maximal value of the function (4-22) specified by the relation (4-24), the value r² /(p² +q² |∇u.sup.σ (x,y,t)1²) of the function (g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ){² where this maximal value is achieved. The above situation may occur in the following cases.

1. The occluding object may artificially constrain the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) in the direction orthogonal to the occluding boundary. Then the optical flow constraint may react by shifting the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector in the direction parallel to the occluding boundary to reduce the absolute value of the function g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ). This, in turn, may increase the value of the function |∇u.sup.σ (x,y,t)|.

2. The estimate (u.sup.σ (x,y,t),v.sup.σ (t)) may diverge as the result of nonlinearity of the optical flow constraint or as the result of the noise present in the images.

The directional smoothness constraint (s,∇u.sup.σ (x,y,t)) in the direction sεS is represented in the system of nonlinear equations (4-19) by the expression ##EQU34## With respect to this expression the following cases can be considered:

1. The image point (x,y) does not cross the occluding boundary in the direction s. Then the value of the function (s,∇u.sup.σ (x,y,t))² may become small. In this case the value of the function (4-25) would approach the value of the function ##EQU35## This, in turn, would make the summand of the system of nonlinear equations (4-19) associated with the directional smoothness constraint (s,∇u.sup.σ (x,y,t)) behave as a linear function of the corresponding constraint with proportionality coefficient equal to the constant value 1/a².

2. The image point (x,y) approaches the occluding boundary in he direction s. Then the value of the function (s,∇u.sup.σ (x,y,t))² may increase. In the case when the value of the function (s,∇u.sup.σ (x,y,t))² is less than the value of the function a² /(c² +b² (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))²), the fact that the summand of the quadratic form (4-21) associated with the directional smoothness constraint (s,∇u.sup.σ (x,y,t)) is positive implies that the function (4-25) would increase. In the case when the value of the function (s,∇u.sup.σ (x,y,t))² is greater than the value of the function a² /(c² +b² (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))²), the fact that the summand of the quadratic form (4-21) associated with the directional smoothness constraint (s,∇u.sup.σ (x,y,t)) is negative implies that the function (4-25) would decrease. Therefore, the function (4-25) achieves its maximal value ##EQU36## when the value of the function (s,∇u.sup.σ (x,y,t))² is equal to the value of the function a² /(c² +b² (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))²).

In the case when the values of some of the functions (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ)),g_(t) εG_(t) are large the following values are reduced: the maximal value of the function (4-25) specified by the relation (4-27), the value a² /(c² +b² (s,∇'g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ))²), of the function (s,∇u.sup.σ (x,y,t))² where this maximal value is achieved. Such an action reflects the fact that in this case the image point (x,y) is likely to cross the occluding boundary in the direction s if the value of the function (s,∇u.sup.σ (x,y,t))² specifying the degree of the smoothness of the estimate of the velocity vector field in such a direction s is large.

As has been stated earlier the role of the regularization constraint is to discriminate between the parametric vector fields (u, v) giving the same optimal values to the weighted average of the optical flow and the directional smoothness constraints without causing any significant changes in these values. This is achieved by assigning small values to the parameters γ_(u) and γ_(v) appearing in the system of nonlinear equations (4-19). For the sake of simplicity of the analysis given below, we shall ignore the regularization constraints by assuming that the parameters γ_(u) and γ_(v) are equal to zero while keeping in mind that the solution of the system of nonlinear equations (4-19) is locally unique.

Taking the above into account, the process of solving the system of nonlinear equations (4-19) described in the next section can be regarded as an attempt to achieve an equal balance between the functions representing two antagonistic sets of constraints: optical flow constraints and directional smoothness constraints. This, in part, is the consequence of the fact that the quadratic form arising from the linearization (5-16) of the system of nonlinear equations (4-19) described in the next section is positive definite.

It is not difficult to see that by increasing the values of the parameters r², p², q² appearing in the relation (4-11), we decrease the values of the weight functions α_(gt).sup.σ (x,y,t,u.sup.σ,v.sup.σ,|∇u.sup.σ |),g_(t) εG_(t). This would shift the balance in the system of nonlinear equations (4-19) toward the directional smoothness constraints. To restore the equal balance between the optical flow and the directional smoothness constraints the system of nonlinear equations (4-19) would react in such a way that the absolute values of the function (s,∇u.sup.σ (x,y,t)),sεS corresponding to the directional smoothness constraint is reduced, while the absolute values of the functions α_(gt).sup.σ (x,y,t,u.sup.σ,v.sup.σ,|∇u.sup.σ |), g_(t) εG_(t) corresponding to the optical flow constraints are increased. Likewise, by increasing the values of the parameters a²,c²,b² _(g).sbsb.t,g_(t) εG_(t) appearing in the relation (4-13), we decrease the values of the weight functions β_(s).sup.σ (x,y,t,u.sup.σ,v.sup.σ,(s,∇u.sup.σ)),sεS. This, in turn, would shift the balance in the system of nonlinear equations (4-19) toward the optical flow constraints. To restore equal balance between the optical flow and the directional smoothness constraints the system of nonlinear equations (4-19) would react in the way that would reduce the absolute values of the functions g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ),g_(t) εG_(t) corresponding to the optical flow constraints and would increase the absolute value of the function (s,∇u.sup.σ (x,y,t)),sεS corresponding to the directional smoothness constraints.

Taking into account the earlier discussion related to the behavior of the optical flow and the directional smoothness constraints, we can conclude the following. The parameters r² and a² have their greatest impact on the solution of the system of nonlinear equations (4-19) at the image points that are away from the occluding boundary, while the parameters p², q², c², b² _(g).sbsb.t,g_(t) εG_(t) mostly influence the solution at the image points that are near the occluding boundary. The parameter r² defines the coefficient of proportionality for the functions g_(t).sup.σ (x,y,t,u.sup.σ,v.sup.σ),g_(t) εG_(t) specifying the optical flow constraints, while the parameter a² determines the proportionality coefficient for the function (s,∇u.sup.σ (x,y,t)),sεS specifying the directional smoothness constraints. The combination (4-24) of the parameters r², p², and q² determines the upper limit for the influence of the optical flow constraints on the solution of the system of nonlinear equations (4-19), while the combination (4-27) of the parameters a², c² and b² _(g).sbsb.t,g_(t) εG_(t) determines the upper limit for the influence of the directional smoothness constraints on the solution of the system of nonlinear equations (4-19).

Earlier the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} was defined as a solution of the system of nonlinear equations (4-19), which can be expressed in the following form: ##EQU37## Here, for the sake of compactness of the notation, the arguments of the functions appearing in the system of nonlinear equations (4-19) have been omitted. Also, the symbols g_(t).sup.σ, g_(tu).sup.σ, g_(tv).sup.σ, g_(t).sup.σ have been used instead of the symbols g_(t).sup.σ, g_(tu).sup.σ, g_(tv).sup.σ, g_(t).sup.σ to indicate that at every image point (x,y)εΩ the corresponding functions depend on the estimate (u.sup.σ (x,y,t),v.sup.σ (t)) of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)).

To compute the estimate of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σε 1,∞)} a restriction is imposed ourselves to a finite subset σ₁, . . . , σ_(n) of the parameter values from the interval 1,∞). Let σ₀ be the parameter with the value equal to ∞. Suppose that the value of the parameter σ_(n) is equal to 1; and that the sequence of the parameters σ₀, σ₁, . . . , σ_(n) is not too sparse, and is decreasing in values. Then the estimate of the parametric velocity vector field. {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σ=σ₁, . . . , σ_(n) } is obtained by successively solving the system of nonlinear equations (5-1) for each value of the parameter σ=σ₁, . . . σ_(n), starting with the parameter value σ=σ₀ where the solution is identically equal to a given vector constraint (u.sup.∞,v.sup.∞), and proceeding in the direction decreasing with respect to the parameter values using the solution of the system of nonlinear equations (5-1) obtained for the preceding parameter value as the initial estimate.

Let δ(σ) be a function of the parameter σ defined on the set of the parameter values σ=σ₁, . . . , σ_(n) by the following relation:

    δ(σ.sub.i)=σ.sub.i-1, i=1, . . . , n.    (5-2)

If the weight constants γ_(u).sup.σ,γ_(v).sup.σ,σ=σ₁, . . . , σ_(n) are defined as in the relations

    γ.sub.u =γ.sub.u.sup.σ (δ(σ)-σ), (5-3)

    γ.sub.v =γ.sub.v.sup.σ (δ(σ)-σ), (5-4)

then the regularization constraints ##EQU38## can respectively, be approximated as ##EQU39## for every image point (x,y)εΩ, and for every parameter value σ=σ₁, . . . σ_(n). Under these conditions the system of nonlinear equations (5-1) of the unknown estimate of the parametric velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ,σ=σ₁, . . . , σ_(n) } takes the form ##EQU40## Then the computational process for estimating the parametric velocity vector field can be more precisely described as follows: for every parameter value σ=σ₁, . . . , σ_(n), using the previously obtained estimate {(u.sup.δ(σ) (x,y,t),v.sup.δ(σ) (t))|(x,y)εΩ) of the velocity vector field corresponding to the parameter value δ(σ) as the initial estimate, find the estimate {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ} of the velocity vector field corresponding to the parameter value σ that is the closest to the initial estimate by solving the system of nonlinear equations (5-7).

For a fixed value of the parameter σ=σ₁, . . . , σ_(n), the system of nonlinear equations (5-7) relative to the unknown estimate (u,v.sup.σ)≡{(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ} of the velocity vector field corresponding to the parameter value σ, defines, for every image point (x,y)εΩ, a set of relations between the components of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)) and its partial derivatives, which can be expressed in the form F.sup.σ (u.sup.σ,v.sup.σ)=0.

To find the estimate (u.sup.σ,v.sup.σ) of the velocity vector field corresponding to the parameter value σ as an estimate of the solution of the system of nonlinear equations (5-7) corresponding to the parameter value σ that is the closest to the initial estimate (u.sup.σ(σ),v.sup.δ(σ)) the iterative updating scheme can be used. In this scheme, starting with the initial estimate (u.sup.δ(σ),v.sup.δ(σ)), which is taken as the current estimate (u.sup.σ,v.sup.σ) of the solution of the system of nonlinear equations (5-7) corresponding to the parameter value σ, the improved estimate (u₊.sup.σ,v₊.sup.σ)≡{(u₊.sup.σ (x,y,t),v₊.sup.σ (t))|(x,y)εΩ} of the solution of the system of nonlinear equations (5-7) corresponding to the parameter value σ is determined by the step

    (u.sub.+.sup.σ,v.sub.+.sup.σ)=(u.sup.σ,v.sup.σ)+.omega.(Δu.sup.σ,Δv.sup.σ),           (5-9)

where the scaler parameter ω defines the length of the step, while the vector field (Δu.sup.σ,Δv.sup.σ)≡{(Δu.sup.σ (x,y,t),Δv.sup.σ (t))|(x,y)εΩ} defines the direction of the step. The step length ωε(0,1! is selected in such a way that the following function is minimized:

    f.sup.σ (ω)=F.sup.σ (u.sup.σ +ωΔu.sup.σ,v.sup.σ +ωΔv.sup.σ).sup.T F.sup.σ (u.sup.σ +ωΔu.sup.σ,v.sup.σ +ωΔv.sup.σ). (5-10)

The step direction (Δu.sup.σ,Δv.sup.σ) is selected in such a way that the function (5-10) becomes steadily decreasing for sufficiently small values of ωε(0,1!. The improved estimate (u₊.sup.σ,v₊.sup.σ) is taken as the current estimate (u.sup.σ,v.sup.σ) of the solution of the system of nonlinear equations (5-7) corresponding to the parameter value σ, and the step (5-9) of the iterative updating scheme is repeated to determine the next improved estimate (u₊.sup.σ,v₊.sup.σ) of the solution of the system of nonlinear equations (5-7) corresponding to the parameter value σ. This process is continued until the appropriate criteria are met, in which case the improved estimate (u₊.sup.σ,v₊.sup.σ) is taken as the estimate (u.sup.σ,v.sup.σ) of the velocity vector field corresponding to the parameter value σ.

If the vector field (Δu.sup.σ,Δv.sup.σ) is not too large, then in the neighborhood of the vector field (u.sup.σ,v.sup.σ) the nonlinear operator F.sup.σ can be linearly expanded as

    F.sup.σ (u.sup.σ +Δu.sup.σ,v.sup.σ +Δv.sup.σ)≈F.sup.σ (u.sup.σ,v.sup.σ)+J.sup.σ (u.sup.σ,v.sup.σ,Δu.sup.σ,Δv.sup.σ). (5-11)

Here the linear and bounded with respect to the vector field (Δu.sup.σ,Δv.sup.σ) operator J.sup.σ (u.sup.σ,v.sup.σ,Δu.sup.σ,Δv.sup.σ) is the Jacobian of the nonlinear operator F.sup.σ (u.sup.σ,v.sup.σ). The operator J.sup.σ (u.sup.σ,v.sup.σ,Δu.sup.σ,Δv.sup.σ) can be more conveniently expressed in the form

    J.sup.σ (u.sup.σ,v.sup.σ,Δu.sup.σ,Δv.sup.σ)=J.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ). (5-12)

In the Newton method 22! the vector field (Δu.sup.σ,Δv.sup.σ) is defined as a solution of the system of linear equations

    =J.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ)=-F.sup.σ (u.sup.σ,v.sup.σ).               (5-13)

Then the improved estimate (u₊.sup.σ,v₊.sup.σ) of the solution of the system of nonlinear equations (5-7) is defined as in the relation (5-9) where the scalar parameter ω is taken to be equal to 1.

The improved estimate (u₊.sup.σ,v₊.sup.σ) of the solution of the system of nonlinear equations (5-7), which is obtained as the result of solving the system of linear equations (5-13) and then applying the relation (5-9), is not necessarily a better estimate. The reason behind it comes from the fact that the Jacobian J.sup.σ (u.sup.σ,v.sup.σ) of the nonlinear operator F.sup.σ (u.sup.σ,v.sup.σ) is nonsymmetric and ill-conditioned, so that the system of linear equations (5-13) cannot be reliably solved for the vector field (Δu.sup.σ,Δv.sup.σ). The last is the consequence of the fact that the regularization constraints can only be effective in resolving the ambiguities of the system of nonlinear equations (5-7) at the image points that are beyond the occluding boundaries where the quadratic form appearing in the relation (4-12) is positive definite. The regularization constraints become ineffective in resolving the ambiguities of the system of nonlinear equations (5-7) at the image points that are near the occluding boundaries where the quadratic form appearing in the relation (4-21) is not positive definite. This observation suggests that an alternative method should be employed.

In the quasi-Newton method of solving the system of nonlinear equations (5-7) the system of linear equations (5-13) is replaced with the system of linear equations

    M.sup.σ (u.sup.σ,v.sup.σ)Δ(u.sup.σ,Δv.sup.σ), (5-14)

which combines the globally convergent strategy of the well-conditioned method with the fast local strategy of the Newton method in a way that derives the benefits of both. This quasi-Newton method defines the regularization of the system of nonlinear equations (5-7) that is meaningful for the problem of estimating the parametric velocity vector field. The linear and bounded with respect to the vector field (Δu.sup.σ,Δv.sup.σ) operator M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) is the approximation to the Jacobian J.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) of the nonlinear operation F.sup.σ (u.sup.σ,v.sup.σ) defined as follows.

Let F.sub.θ.sup.σ (u.sup.σ,v.sup.σ,u.sup.σ,v.sup.σ),θε 0,1!, be a family of nonlinear operators of the invariable copy (u.sup.σ,v.sup.σ) and of the variable copy (u.sup.σ,v.sup.σ) of the estimate of the velocity vector field corresponding to the parameter value σ defined by the relation ##EQU41## where the symbols g_(t).sup.σ,g_(tu).sup.σ,g_(tv).sup.σ,g_(t).sup.σ are used to indicate that at every image point (x,y)εΩ the corresponding functions depend on the invariable copy (u.sup.σ (x,y,t), v.sup.σ (t)) of the estimate of the velocity vector (u.sup.σ(x,y,t),v.sup.σ (t)), while the symbol g_(t).sup.σ is used to indicate that at every image point (x,y)εΩ the corresponding function depends on the variable copy (u.sup.σ (x,y,t),v.sup.σ (t)) of the estimate of the velocity vector (u.sup.σ(x,y,t),v.sup.σ (t)). If the variable copy (u.sup.σ,v.sup.σ) of the estimate of the velocity vector field is identically equal to the invariable copy (u.sup.σ,v.sup.σ) of the estimate of the velocity vector field, then for every θε 0,1! the nonlinear operator F.sub.θ.sup.σ (u.sup.σ,v.sup.σ,u.sup.σ,v.sup.σ) is identically equal to the nonlinear operator F.sup.σ (u.sup.σ,v.sup.σ). The parameter θ defines the degree of the feedback relaxation of the optical flow and the directional smoothness constraints through the variable copy (u.sup.σ,v.sup.σ) of the estimate of the velocity vector field.

Let M.sub.θ.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ),.theta.ε 0,1! be a family of the linear and bounded with respect to the vector field (Δu.sup.σ,Δv.sup.σ) operators, where for each θε 0,1! the operator M.sub.θ.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) is the Jacobian of the nonlinear operator F.sub.θ.sup.σ (u.sup.σ,v.sup.σ,u.sup.σ,v.sup.σ), considered as the function of the vector field (u.sup.σ,v.sup.σ), and depending on the vector field (u.sup.σ,v.sup.σ) as on the parameter, under the conditions that the vector field (u.sup.σ,v.sup.σ) is identically equal to the vector field (u.sup.σ,v.sup.σ). Then the operator M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) is defined as the member of the family M.sub.θ.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ),.theta.ε 0,1! satisfying the following requirements:

1. As a part of the globally convergent strategy, the vector field (Δu.sup.σ,Δv.sup.σ) obtained as the solution of the system of linear equations (5-14) is required to be a descent direction for the functional h(u.sup.σ,v.sup.σ,u.sup.σ,v.sup.σ), considered as the function of the vector field (u.sup.σ,v.sup.σ), and depending on the vector field (u.sup.σ,v.sup.σ) as on the parameter, under the conditions that the vector field (u.sup.σ,v.sup.σ) be identically equal to the vector field (u.sup.σ,v.sup.σ). In other words, the first-order partial with respect to the variable ω derivative of the functional h(u.sup.σ,v.sup.σ,u.sup.σ +ωΔu.sup.σ,v.sup.σ +ωΔv.sup.σ) considered as the function of the scalar variable ω is required to be negative when the value of such variable ω is equal to 0. It is not difficult to see that the value of this derivative is equal to

    -F.sup.σ (u.sup.σ,v.sup.σ).sup.T M.sup.σ (u.sup.σ,v.sup.σ).sup.-1 f.sup.σ (u.sup.σ,v.sup.σ).                            (5-16)

the requirement for the functional (5-16) to be negative can be satisfied by in turn requiring the operator M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) to be positive definite.

2. As a part of the fast local strategy, the operator M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) is required to be the nearest possible approximation to the Jacobian J.sup.σ (u.sup.σ,v.sup.σ)(σu.sup.σ,σv.sup.σ) of the nonlinear operator F.sup.σ (u.sup.σ,v.sup.σ).

The operator M.sub.θ.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) from the family corresponding to the parameter value θ=0.5 satisfies the above requirements and is taken as the operator M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) appearing in the system of linear equations (5-14). With this choice of the operator M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ) the system of linear equations (5-14) has the following explicit form ##EQU42##

Next, the finite-difference discretizations of the system of nonlinear equations (5-7) as well as the system of linear equations (5-17) are considered. The method of constructing the estimate of the solution of the system of nonlinear equations (5-7) is extended to the finite-difference discretization of this system.

Although the theoretical analysis for the computation of the estimate of the parametric velocity vector field can be effectively performed in the case when the combined generalized initial image functions Γ_(g),gεG are defined over the entire set of testing functions Φ(R³), while the estimate (u(x,y,t),v(t)) of the velocity vector (u(x,y,t),v(t)) is defined for every image point (x,y)εΩ and for every viewpoint tεT, the actual computation can only be accomplished on finite sets of the above data sets. In this section a fininte-difference discretization of the system of nonlinear equations (5-7) is described. The estimate of the parametric velocity vector field is then determined as a solution of the resulted system of a finite number of nonlinear equations.

Given a generalized function F defined on the locally convex linear topological space Φ(R³), and given a testing function φεΦ(R³) the "convolution" of the generalized function F and the testing function φ is the infinitely differentiable function (F*φ) defined on the space r³ by the relation

    (F*Φ)(x,y,t)=F(Φ.sub.x,y,t),Φ.sub.x,y,t (x,y,t)≡Φ(x-x,y-y,t-t), (x,y,t)εR.sup.3, (6-1)

for every (x,y,t)εR³.

Let F be a generalized function, and let χεΦ(R³) be a given fixed non-negative testing function such that ##EQU43## For instance, take ##EQU44## where ψ is the function described later. The testing function χ will be called the "sampling function". Then the "regularization" of the generalized function F through the sampling function χ is defined on the space R³ as the infinitely differentiable function (F*χ), which is obtained as the convolution of the generalized function F and the sampling function χ.

Let {t'_(k) }_(k=0) ^(k') be an increasing sequence of viewpoints containing the sequence of viewpoints {t"_(k) }_(k=0) ^(k"). Assume that for every tε{t'_(k) }_(k=0) ^(k') the regularizations γξ≡(Γ.sub.ξ *χ) of the generalized functions Γ.sub.ξ associated with the irradiance image functions ξ, ξεΞ through the sampling function χ and the regularizations γ≡(Γ*χ) of the generalized functions Γη associated with the feature image functions η, ηεH through the sampling function χ are given at the points (x,y) belonging to the following subset of the image plane:

    R.sup.2 (h'.sub.σ,1,h'.sub.σ,2)={(x',y')|(x',y')=i.sub.1 h'.sub.σ,1 +i.sub.s h'.sub.σ,2,i.sub.1,i.sub.2 εZ}. (6-2)

Here Z is the set of integers ; h'.sub.σ,1,h'.sub.σ,2 are two-dimensional real vectors; and i₁ h'.sub.σ,1 +i₂ h'.sub.σ,2 is a linear combination of such vectors with integer coefficients i₁,i₂. The points from the set R² (h'.sub.σ,1,h'.sub.σ,2) will be called the "sampling points" corresponding to the parameter σ; the functions γ,ξεΞ will be called the "sampled irradiance image functions"; and the functions γ,ηεH will be called the "sampled feature image functions".

The generalized functions Γ.sub.ξ,σ associated with the sampled irradiance image functions γ.sub.ξ,ξεΞ and the generalized functions Γ.sub.η,σ associated with the sampled feature image functions γ.sub.η,ηεH are defined on the set of testing functions Φ(R³) as follows. The value of the generalized function Γ.sub.ξ,σ associated with the sampled irradiance image function γ.sub.ξ at the testing function φεΦ(R³) is given by the relation ##EQU45## The value of the generalized function Γ.sub.η,σ associated with the sampled feature image function γ₈₆ at the testing function φεΦ(R³) is given by the relation ##EQU46##

Let λ≡{λ.sub.ξ,λ|ξεΞ,.eta.εH} be a set of real-valued constants; leg g(λ) be an index attached to the set λ; and let m_(g)(λ) ≡{m.sub.ξ,x,m.sub.ξ,y,m.sub.ξ,t,m.sub.η,x,m.sub.η,y,m.sub.η,t |ξεΞ,ηεH} be a set of non-negative integer constants corresponding to the set of constants λ. Then the "combined generalized sampled image function" corresponding to the index g≡g(λ) is the generalized function Γ_(g),σ defined on the locally convex linear topological space Φ(R³). The value of the combined generalized sampled image function Γ_(g),σ at the testing function φεΦ(R³) is given by the relation ##EQU47## and is called the "observation" of the combined generalized sampled image function Γ_(g),λ on the testing function φ.

Assume the restriction to the case when each set R² (h'.sub.σ,1,h'.sub.σ,2),σ=σ₀,σ₁, . . . , σ_(n) is a square grid of points on the image plane. In other words, it is a requirement that the vectors h'.sub.σ,1, h'.sub.σ,2 are of equal length and are orthogonal to each other for every σ=σ₀,σ₁, . . . , σ_(n). Also, it is a requirement that such grids of points constitute a pyramid on the image plane which means that the following relation is satisfied:

    R.sup.2 (h'.sub.σ.sbsb.0'.sub.1,h'.sub.σ.sbsb.0'.sub.2).OR right.. . . .OR right.R.sup.2 (h'.sub.σ.sbsb.n'.sub.1 h'.sub.σ.sbsb.n'.sub.2).                            (6-6)

The "grid rotation method" is the sampling method that complies with the above requirements. It is commonly used to obtain numerical solutions of partial differential equations. In this method the vectors h'.sub.σ0,1,h'.sub.σ0,2 are selected to be of equal length and orthogonal to each other; then for every k=1, . . . , n the vectors h.sub.σ.sbsb.k'₁,h.sub.σ.sbsb.k'₂ are defined as in the relations

    h'.sub.σ.sbsb.k'.sub.1 =0.5(h'.sub.σ.sbsb.k-1'.sub.1 +h'.sub.σ.sbsb.k-1'.sub.2),                         (6-7)

    h'.sub.σ.sbsb.k'.sub.2 =0.5(h'.sub.σ.sbsb.k-1'.sub.1 -h'.sub.σ.sbsb.k-1'.sup.2).                         (6-8)

It is not difficult to see that the above defined vectors h.sub.σ.sbsb.k'₁,h.sub.σ.sbsb.k'₂ are of equal length and are orthogonal to each other for every k=0,1, . . . , n, and that the relation (6-6) is satisfied.

Let k' be a positive integer constant and ψεΦ(R³) be a given measurement function. Then for every viewpoint tε{t"_(k) }_(k=0) ^(k'), and for every parameter value σ=σ₀,σ₁, . . . , σ_(n) the image function g.sup.σ (x,y,t) and its spatial partial derivatives g_(x).sup.σ (x,y,t),g_(y).sup.σ (x,y,t) are defined on the set Ω as follows.

First, assume that the image point (x,y) belongs to the subset Ω"(h".sub.σ,1,h".sub.σ,2)∩R² (h".sub.σ,1,h".sub.σ,2). Here the two-dimensional real vectors h".sub.σ,1,h".sub.σ,2 are defined as in the relations

    h".sub.σ,1 =k'h'.sub.σ,1,                      (6-9)

    h".sub.σ,2 =k'h'.sub.σ,2,                      (6-10)

while the set Ω"(h".sub.σ,1,h".sub.σ,2).OR right.R² is defined as in the relation ##EQU48## Then for every gεG the value of the component g.sup.σ (x,y,t) of the image function g.sup.σ (x,y,t) is determined as the observation Γ_(g),σ (ψ_(x),y,t.sup.σ) of the combined generalized sampled image function Γ_(g),σ on the testing function ψ_(x),y,t.sup.σ defined by the relation (2-4); and the values of the components g_(x).sup.σ (x,y,t),g_(y).sup.σ (x,y,t) of the partial derivatives g_(x).sup.σ (x,y,t),g_(y).sup.σ (x,y,t) of the image function g.sup.σ (x,y,t) are given as the observations ##EQU49## of the combined generalized sampled image function Γ_(g),σ on the defined by the relations (2-5), (2-6) testing functions ##EQU50##

Let (x,y) be any image point from the set Ω, then for some integer numbers i₁,i₂ and for some real numbers θ₁, θ₂ from the interval 0,1! the following relation is satisfied:

    (x,y)=(i.sub.1 +θ.sub.1)h".sub.σ,1 +(i.sub.2 +θ.sub.2)h".sub.σ,2.                          (6-12)

Then the values of the image function g.sup.σ (x,y,t) and its partial derivatives g_(x).sup.σ (x,y,t),g_(y).sup.σ (x,y,t) are obtained through the bilinear interpolations

    g.sup.σ (x,y,t)=(1-θ.sub.2)((1-θ.sub.1)g.sup.σ (x.sub.1,1,y.sub.1,1,t)+θ.sub.1 g.sup.σ (x.sub.1,2,y.sub.1,2,t))+θ.sub.2 ((1-θ.sub.1)g.sup.σ (x.sub.2,1,y.sub.2,1,t)+θ.sub.1 g.sup.σ (x.sub.2,2,y.sub.2,2,t)),                                 (6-13)

    g.sup.σ.sub.x (x,y,t)=((1-θ.sub.2)((1-θ.sub.1)g.sup.σ.sub.x (x.sub.1,1,y.sub.1,1,t)+θ.sub.1 g.sup.σ.sub.x (x.sub.1,2,y.sub.1,2,t+θ.sub.2 ((1-θ.sub.1)g.sup.σ.sub.x (x.sub.2,1,y.sub.2,1,t)+θ.sub.1 g.sup.σ.sub.x (x.sub.2,2,y.sub.2,2,t)),                                 (6-14)

    g.sup.σ.sub.y (x,y,t)=((1-θ.sub.2)((1-θ.sub.1)g.sup.σ.sub.y (x.sub.1,1,y.sub.1,1,t)+θ.sub.1 g.sup.σ.sub.y (x.sub.1,2,y.sub.1,2,t+θ.sub.2 ((1-θ.sub.1)g.sup.σ.sub.y (x.sub.2,1,y.sub.2,1,t)+θ.sub.1.sup.σ (x.sub.2,2,y.sub.2,2,t)),                                 (6-15)

of the values of the image function g.sup.σ (x,y,t) and, respectively, its partial derivatives g_(x).sup.σ (x,y,t),g_(y).sup.σ (x,y,t) at the points from the set Ω"(h".sub.σ,1,h".sub.σ,2)∩R² (h".sub.σ,1,h".sub.σ,2) given as in the relations

    (x.sub.1,1,y.sub.1,1 =i.sub.1 h".sub.σ,1 +i.sub.2 h".sub.σ,2, (6-16)

    (x.sub.1,2,y.sub.1,2 =i.sub.1 +1)h".sub.σ,1 +i.sub.2 h".sub.σ,2,                                         (6-17)

    (x.sub.2,1,y.sub.2,1 =i.sub.1 h".sub.σ,1 +(i.sub.2 1)h".sub.σ,2,                                       (6-18)

    (x.sub.2,2,y.sub.2,2 =(i.sub.1 +1)h".sub.σ,1 +(i.sub.2 +1)h".sub.σ,2,                                      (6-19)

Let k" be a positive integer constant, and let h.sub.σ,1,h.sub.σ,2 be two-dimensional real vectors defined as in the relations

    h.sub.σ,1 =k"h".sub.σ,1,                       (6-20)

    h.sub.σ,2 =k"h".sub.σ,2,                       (6-21)

while the set Ω(h.sub.σ,1,h.sub.σ,2)=.OR right.Ω be defined as in the relation

    Ω(h.sub.σ,1,h.sub.σ,2)Ω∩R.sup.2 (h.sub.σ,1,hσ,2).                             (6-22)

The finite-difference discretizations of the system of nonlinear equations (5-7) and of the system of linear equations (5-17), both corresponding to the parameter value σ=σ₀,σ₁, . . . , σ_(n), are defined on the set Ω(h.sub.σ,1,h.sub.σ,2) as, respectively, the system of nonlinear equations relative to the unknown estimate of the velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ(h.sub.σ,1,h.sub.σ,2)} corresponding to the parameter value σ and its finite differences, and the system of linear equations relative to the unknown vector field {(Δu.sup.σ (x,y,t),Δv.sup.σ (t))|(x,y)εΩ(h.sub.σ,1,h.sub.σ,2)} corresponding to the parameter value σ and its finite differences as follows.

The expressions appearing under the integral signs over the set S in the system of nonlinear equations (5-7) and in the system of linear equations (5-17) have the general form

    (s,∇f(x,y,t,s)),                                  (6-23)

f(x,y,t,s) is a function of the variables (x,y)εΩ,tεT,sεS, which is continuously differentiable with respect to the variables (x,y)εΩ for every fixed value of the variables tεT,sεS.

The unit circle making up the set S is replaced by a finite set, denoted by the same symbol S, of the set R² (h₉₄ ,1,h.sub.σ,2) having the following properties: the set S does not contain the origin, and for every element S belonging to the set S the element -s also belongs to the set S. The measure ds is replaced with the point measure associating the value 0.5 to every element sεS.

As a consequence of the above actions an integral over the set S of values of any expression of the form (6-23) becomes a finite sum over the set S of the values of that expression; in other words, the following relation is satisfied: ##EQU51##

Given a function f(x,y,t,s) that is continuously differentiable with respect to the variables (x,y)εΩ for every tεT, sεS, and given an element sεS, the expression (6-23) is defined on the set R² (h.sub.σ,1 h.sub.σ,2) in terms of the finite-difference approximations to the partial derivatives as

    (s,∇f(x,y,t,s))=ρ.sub.s (f(x+0.5s.sub.x,y+0.5s.sub.y,t,s)-f(x-0.5s.sub.x,y-0.5s.sub.y,t,s)), (6-25)

ρ_(s) is a real positive constant depending on the length of the vector s as a parameter, and the values s_(x),s_(y) are the components of the vector s≡(s_(x),s_(y)).

Taking into account the relation (6-25) and the fact that the set S has the property that for every element sεS the element -sεS, then, in the case when f(x,y,t,s) is an odd function with respect to the variable s, the sum appearing in eh relation (6-24) can be expressed as ##EQU52##

It is assumed that the set G_(t) is finite and that dg_(t) is the point measure associating the value ρ(g_(t)) to the element g_(t) εG_(t). Here ρ(g_(t)) is a real positive constant for every g_(t) εG_(t).

Based on the above discussion, the system of nonlinear equations (5-7) can be defined on the set R² (h.sub.σ,1,h.sub.σ,2) as ##EQU53## while the system of linear equations (5-17) can be defined on the set R² (h.sub.σ,1,h.sub.σ,2) as ##EQU54## The arguments of the functions appearing in the relations (6-27), (6-28) have been omitted for the sake of simplicity of notation. The functions appearing under the summation over the set S sign are evaluated at the points (x+0.5s_(x),y+0.5s_(y),t), while the rest of the functions are evaluated at the points (x,y,t) for every (x,y)εR² (h.sub.σ,1,h.sub.σ,2),tεT,s≡(s_(x),s_(y)).epsilon.S. The functions g_(t).sup.σ,g_(tu).sup.σ,g_(tv).sup.σ are defined, respectively, by the relations ##EQU55## The function |∇u|² is defined as in the relation ##EQU56## The function (s,∇u.sup.σ) is defined by the relations

    (s,∇u.sup.σ)≡(s,∇u.sup.σ (x+0.5s.sub.x,y+0.5s.sub.y,t))=ρ.sub.s (u.sup.σ (x+s.sub.x,y+s.sub.y,t)-u.sup.σ (x,y,t)),           (6-33)

while the function (s,∇(Δu.sup.σ)) is defined as in the relations

    (s,∇(Δu.sup.σ)≡(s,∇(Δu.sup..sigma. (x+0.5s.sub.x,y+0.5s.sub.y,t)))=ρ.sub.s (Δu.sup.σ (x+s.sub.x,y+s.sub.y,t)-Δu.sup.σ (x,y,t)),    (6-34)

The function b² (s,∇'g_(t).sup.σ)² is defined by the relation ##EQU57## where each function (s,∇'g_(t).sup.σ)²,g_(t) εG_(t) is determined as

    (s,∇'g.sub.t.sup.σ).sup.2 ≡(s,∇'g.sub.t.sup.σ (x+0.5s.sub.x,y+0.5s.sub.y,t,u.sup.σ,v.sup.σ)).sup.2 =(s,∇'g.sup.σ.sub.t (x,y,t,u.sup.σ,v.sup.σ)).sup.2 +(s,∇'g.sup.σ.sub.t (x+s.sub.x,y+s.sub.y,t,u.sup.σ,v.sup.σ)).sup.2. (6-36)

Above, for each value (x',y',t) (equal either to (x,y,t) or to (x+s_(x),y+s_(y),t)) the value of the function (s,∇'g_(t).sup.σ (x',y',t,u.sup.σ,v.sup.σ))² is given by the relation (4-8).

The restriction of the system of nonlinear equations (6-27) and the restriction of the system of linear equations (6-28) on the set Ω(h.sub.σ,1,h₉₄ ,2) of the set R² (h.sub.σ,1,h.sub.σ,2) are both accomplished through introduction of the boundary condition as follows. For every image point (x,y)εΩ(h.sub.σ,1 h.sub.σ,2) and for every element s≡(s_(x),s_(y))εS such that the point (x+s_(x),y+_(s) _(y)) is outside of the set Ω(h.sub.σ,1,h.sub.σ,2) the value of the estimate of the velocity vector (u.sup.σ (x+s_(x),y+s_(y),t),v.sup.σ (t)) is defined to be identically equal to the value of the estimate of the velocity vector (u.sup.σ (x,y,t),v.sup.σ (t)). Under these conditions the system of nonlinear equations (6-27) and the system of linear equations (6-28) are well defined for every image point (x,y) from the set Ω(h.sub.σ,1,h.sub.σ,2) and, therefore, form, respectively, the system of nonlinear equations relative to the unknown estimate of the velocity vector field {(u.sup.σ (x,y,t),v.sup.σ (t))|(x,y)εΩ(h.sub.σ,1 h.sub.σ,2)} corresponding to the parameter value σ and its finite differences, and the system of linear equations relative to the unknown vector field {(Δu.sup.σ (x,y,t),Δv.sup.σ (t))|(x,y)εΩ(h.sub.σ,1,h.sub.σ,2)} corresponding to the parameter value σ and its finite differences.

Let us denote by the symbol .linevert split.S.linevert split. the number of elements of the set S, then for every s≡(s_(x),s_(y))εS the constant ρ_(s) can be defined as in the relation ##EQU58##

The following are two commonly used ways of selecting the set S

    S≡{h.sub.σ1,-h.sub.σ,1,h.sub.σ,2,-h.sub.σ,2 },                                                        (6-38)

    S≡{h.sub.σ1,-h.sub.σ,1,h.sub.σ,2,-h.sub.σ,2 h.sub.σ1 +h.sub.σ,2,-h.sub.σ,1 -h.sub.σ,2,h.sub.σ,1 -h.sub.σ,2,-h.sub.σ,1 +h.sub.σ,2 }                                        (6-39)

If the set S is selected as in the relation (6-38) we say that the "five-points finite-difference discretization" is used, while for the selection specified by the relation (6-39) we say that the "none-points finite-difference discretization" is used.

Let k=0, . . . , n-1 and let {(u.sup.σ.sbsp.k (x,y,t),v.sup.σ.sbsp.k (t))|(x,y)εΩ(h.sub.σ.sbsb.k'₁,h.sub..sigma..sbsb.k'₂)} be an estimate of the velocity vector field corresponding to the parameter value σ_(k). Then the initial estimate {(u.sup.σ.sbsp.k+1 (x,y,t),v.sup.σ.sbsp.k+1 (t))|(x,y)εΩ(h.sub.σ.sbsb.k+1,1,h.sub.σ.sbsb.k+1₂)} of the velocity vector field corresponding to the parameter value σ_(k+1) is defined as follows. For every (x,y)εΩ(h.sub.σ.sbsb.k+1'₁,h.sub.σ.sbsb.k+1'₂) such that (x,y)εΩ(h.sub.σ.sbsb.k'₁,h.sub.σ.sbsb.k'.sub.2) the value of the estimate (u.sup.σ.spsb.k+1 (x,y,t),v.sup.σ.spsb.k+1 (t)) is given by the relation (u.sup.σ.spsb.k+1 (x,y,t),v.sup.σ.spsb.k+1 (t))=(u.sup.σ.spsb.k (x,y,t),v.sup.σ.spsb.k (t)) (6-40)

while for every (x,y)εΩ(h.sub.σ.sbsb.k'₁,h.sub.σ.sbsb.k'.sub.2 such that (x,y)Ω(h.sub.σ.sbsb.k'₁,h.sub.σ.sbsb.k'₂) the value of the estimate (u.sup.σ.spsb.k+1 (x,y,t),v.sup.σ.spsb.k+1 (t)) is given as in the relation ##EQU59## where

    (x.sub.i.sbsb.1'.sub.i.sbsb.2,y.sub.i.sbsb.1'.sub.1.sbsb.2)=(x,y)+i.sub.1 h.sub.σ.sbsb.k+1'.sub.1 +i.sub.2 h.sub.σ.sbsb.k+1'.sub.2. (6-42)

The system of linear equations (6-28) is symmetric and positive definite. As shown below, the system of linear equations (6-28) can be partitioned into two systems, one of which can be directly inverted. Based on these properties a fast preconditioned iterative method is constructed. If we introduce an ordering on the set Ω(h.sub.σ,1,h.sub.σ,2), then the system of linear equations (6-28) can be expressed in the matrix notation as

    M.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ).sup.T =-F.sup.σ (u.sup.σ,v.sup.σ),        (7-1)

where (Δu.sup.σ,Δv.sup.σ)^(T) is the transpose vector of the row-vector (Δu.sup.σ,Δv.sup.σ), corresponding to the vector field {(u.sup.σ (x,y,t),Δv.sup.σ (t))|(x,y)εΩ(h.sub.σ,1 h.sub.σ,2)}, which is obtained by first listing the elements of the set {(u.sup.σ (x,y,t),|(x,y)εΩ(h.sub.σ,1 h.sub.σ,2)} according to the specified ordering, then listing the elements Δv.sup.σ (t). The "natural ordering" on the set Ω(h.sub.σ,1,h.sub.σ,2) can be defined as follows. The relations (6-2) and (6-22) imply that every element (x,y)εΩ(h.sub.σ,1,h.sub.σ,₂) can be uniquely represented in the form (x,y)≡i₁ h.sub.σ,1 +i₂ h.sub.σ,2 where i₁, and i₂ are integer numbers. Then the element (x,y)≡i₁ h.sub.σ,1 +i₂ h.sub.σ,2 εΩ(h.sub.σ,1,h.sub.σ,2) follows the element (x',y')≡i'₁ h.sub.σ,1 +i'₂ h.sub.σ,2 εΩ(h.sub.σ,1,h.sub.σ,2) if i₂ >i'₂ or if i₂ =i'₂ and i₁ >i'₁.

Let the matrix D.sup.σ (u,v.sup.σ) be the diagonal part of the matrix M.sup.σ (u.sup.σ,v.sup.σ), while the matrix -B.sup.σ (u.sup.σ,v.sup.σ) is the off-diagonal part of the matrix M.sup.σ (u.sup.σ,v.sup.σ), so that the relation

    M.sup.σ (u.sup.σ,v.sup.σ)=D.sup.σ (u.sup.σ,v.sup.σ)-B.sup.σ (u.sup.σ,v.sup.σ) (7-2)

is satisfied, then the system of linear equations (6-28) takes the form

    (D.sup.σ (u.sup.σ,v.sup.σ)=B.sup.σ (u.sup.σ,v.sup.σ)) (Δu.sup.σ,Δv.sup.σ).sup.T =-F.sup.σ (u.sup.σ,v.sup.σ).                            (7-3)

Let c.sup.σ (u.sup.σ,v.sup.σ) be a diagonal matrix defined by the relations

    C.sup.σ (u.sup.σ,v.sup.σ)=D.sup.σ (u.sup.σ,v.sup.σ)).sup.1/2,                   (7-4)

    C.sup.σ (u.sup.σ,v.sup.σ).sup.T C.sup.σ (u.sup.σ,v.sup.σ)=D.sup.σ (u.sup.σ,v.sup.σ). (7-5)

Let (Δu.sup.σ,Δv.sup.σ) be a vector defined by the relation

    (Δu.sup.σ,Δv.sup.σ).sup.T =C.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ,Δv.sup.σ).sup.T.                                                      (7-6)

If both sides of the system of linear equations (7-3) of the unknown vector (Δu.sup.σ,Δv.sup.σ) are multiplied on the matrix C.sup.σ (u.sup.σ,v.sup.σ)^(-T) from the left and if the unknown vector (Δu.sup.σ,v.sup.σ) is stituted with the unknown vector (Δu.sup.σ,v.sup.σ) the system of linear equations (7-3) becomes the following system of linear equations relative to the unknown vector (Δu.sup.σ,v.sup.σ):

    (Δu.sup.σ,Δv.sup.σ).sup.T =C.sup.σ (u.sup.σ,v.sup.σ).sup.-T B.sup.σ (u.sup.σ,v.sup.σ)C.sup.σ (u.sup.σ,v.sup.σ).sup.-1 (Δu.sup.σ,Δv.sup.σ).sup.T -C.sup.σ (u.sup.σ,v.sup.σ).sup.-T F.sup.σ (u.sup.σ,v.sup.σ).                            (7-7)

Let G.sup.σ (u.sup.σ,v.sup.σ) be a matrix defined as in the relation

    G.sup.σ (u.sup.σ,vhu σ)=C.sup.σ (u.sup.σ,v.sup.σ).sup.-T B.sup.σ (u.sup.σ,v.sup.σ)C.sup.σ (u.sup.σ,v.sup.σ).sup.-1,                     (7-8)

while h.sup.σ (u.sup.σ,v.sup.σ) is a vector given by the relation

    h.sup.σ (u.sup.σ,v.sup.σ)=C.sup.σ (u.sup.σ,v.sup.σ).sup.-T F.sup.σ (u.sup.σ,v.sup.σ);                            (7-9)

then the following basic iterative method can be used to obtain an approximation to the solution of the system of linear equations (6-28).

The initial approximation (Δu₀.sup.σ,Δv₀ ⁹⁴ ) to the solution of the system of linear equations (7-7) is defined to be identically equal to zero. For every n=0,1, . . . the approximation (Δu_(n+1).sup.σ,Δv_(n+1) ⁹⁴ ) is defined in terms of the approximation (Δu_(n).sup.σ,Δv_(n) ⁹⁴ ) as in the relation

    (Δu.sup.σ .sub.n+1,Δvσ.sub.n+1).sup.T =G.sup.σ (u.sup.σ,v.sup.σ)(Δu.sup.σ .sub.n,Δv.sup.σ.sub.n).sup.T -h.sup.σ (u.sup.σ,v.sup.σ).                            (7-10)

The process is continued until a proper approximation (Δu_(N).sup.σ,Δv_(N) ⁹⁴ ) to the solution of the system of linear equations (7-7) is achieved. The approximation (Δu.sup.σ,Δv⁹⁴ ) to the solution of the system of linear equations (6-28) is defined by the relation

    (Δu.sup.σ,Δv.sup.94 ).sup.T =C.sup.σ (u.sup.σ,v.sup.σ).sup.-1 (Δu.sup.σ .sub.N,Δv.sup.σ.sub.N).sup.T.                 (7-11)

The performance of the basic iterative method (7-10) can be improved with the help of the polynomial acceleration applied to the basic iterative method. For the sake of simplicity of the presentation the following notation shall be used:

    w≡(Δu.sup.σ,Δv.sup.94 ).sup.T, G≡G.sup.σ (u.sup.σ,v.sup.94 ),h≡h.sup.σ (u.sup.σ,v.sup.94 ).                                (7-12)

Then the basic iterative method (7-10) becomes

    w.sub.n+1 =Gw.sub.n -h.                                    (7-13)

The conjugate gradient polynomial acceleration of the basic iterative method (7-13) can be described as follows. Start with the initial approximation bold w₀ which is identically equal to zero, then for every n=0,1, . . . the following iterative procedure is applied:

    w.sub.n+1 =ρ.sub.n (γ.sub.n (Gw.sub.n -h)+(1-γ.sub.n)w.sub.n)+(1-ρ.sub.n)w.sub.n-1.   (7-14)

Here the coefficients ρ_(n) and γ_(n) are given by the relation ##EQU60##

The conjugate gradient method can be expressed in the alternative form

    w.sub.n+1 =w.sub.n +α.sub.n p.sub.n, r.sub.n+1 =r.sub.n -α.sub.n q.sub.n,                                   (7-19)

where the coefficients α_(n) are defined as in the relation (7-16), while the vectors p_(n), q_(n) are given by the relation (7-17).

In an exemplary embodiment of the invention, the five level resolution pyramid was used with the value of the parameter σ decreasing by a factor of 2.0 for each successively finer resolution level. A none-points finite-difference discretization was used. The positive integer constant k' appearing in the relations (6-9), (6-10) is equal to 4, while the positive integer constant k" appearing in the relations (6-20), (6-21) is equal to 2. With these values, the present invention is capable of estimating the velocity vector field with good accuracy in the case of the images of real world scenes containing multiple occluding boundaries.

The many features and advantages of the invention are apparent from the detailed specification and thus it is intended by the appended claims to cover all such features and advantages of the invention which fall within the true spirit and scope of the invention. Further, since numerous modifications and changes will readily occur to those skilled in the art, it is not desired to limit the invention to the exact construction and operation illustrated and described, and accordingly all suitable modifications and equivalents may be resorted to, falling within the scope of the invention. 

What is claimed is:
 1. A method, comprising the steps of:(a) capturing a pair of stereo images of a scene separated in a horizontal direction; (b) creating, using a computer, an in-between image intermediate between the pair by estimating velocity vector fields providing a correspondence between the images using a global search constrained in a horizontal direction and interpolating the in-between image; and (c) producing a depth image from the pair of stereo images and the in-between image.
 2. A method as recited in claim 1, wherein step (b) creates plural in-between images.
 3. A method as recited in claim 1, wherein step (b) includes aligning an entirety of the pair of stereo and the in-between image in a vertical direction simultaneously.
 4. A method as recited in claim 1, wherein step (b) comprises the steps of:(i) determining a scene correspondence between the pair of stereo images by constraining correspondence searching in the horizontal direction; and (ii) interpolating between the pair of stereo images using the scene correspondence. 